    //move
    function move(formO,selectO,to)
    {
        var index = selectO.selectedIndex;
        var selectLength  = selectO.length - 1;
	var Text  = selectO.options[index].text;
	var Value = selectO.options[index].value;
	
        //error handling
        //nothing selected
        if (index == -1) return ;

        if(to == +1 && index == selectLength)
        {
            return ;
        }
        else if(to == -1 && index == 0)
        {
            return ;
        }


	if (index == 1&&to==-1&&Value.indexOf("+")!=-1)
	{
	    return ;
	}
	
	
	
        swap(index,index+to,formO,selectO);
     

	//set buttons right
	setButtons(formO,selectO);


    }

    //change
    function change(formO,selectO,to)
    {
        var index = selectO.selectedIndex;

        var selectLength  = selectO.length - 1;

        //error handling
        //nothing selected
        if (index == -1) return ;

        if(to == +1 && index == 0)
        {
            return ;
        }


	Text  = selectO.options[index].text;
        Value = selectO.options[index].value;


	 	if (Value.indexOf("+") == -1)
		{
			currentto = -1;
		} else
		{
			currentto = +1;
		}



	    //set values
		if (to == -1 && currentto != to)
		{
		//menu
	       	selectO.options[index].text  = Text.substring(4,Text.length);
	        selectO.options[index].value = Value.substring(1,Value.length);

		} else if (to == 1 && currentto != to)
		{
		//submenu
        	selectO.options[index].text  = ' -> '+Text;
	        selectO.options[index].value = '+'+Value;
		}

		//set buttons right
		setButtons(formO,selectO);


    }



    //delete
    function deleteItem(formO,selectO)
    {
        var index = selectO.selectedIndex;
	var selectLength  = selectO.length - 1;
	
        //error handling
        //nothing selected
        if (index == -1) return false;
   
   	var Value = selectO.options[index].value;   
   	var number = Value.indexOf('_');
   	if (number!=-1) {
   	    return ;
	}

      
	//has submenu's
	if (index<selectLength&&Value.indexOf("+")==-1) {
		if (selectO.options[index+1].value.indexOf("+")!=-1) {
			return ;
		}
	}

  	//prepare
	if (Value.indexOf('+')!=-1) {
	    Value = Value.replace('+','');
	}

        window.location = '?page=_cmsfrontpage&action=delete&filename='+Value;
        
        return;
    }



    //basic swap
    function swap(fIndex,sIndex,formO,selectO)
    {
        //store first
        var fText  = selectO.options[fIndex].text;
        var fValue = selectO.options[fIndex].value;


        //make first = second
        selectO.options[fIndex].text  = selectO.options[sIndex].text;
        selectO.options[fIndex].value = selectO.options[sIndex].value;

        //make second = first
        selectO.options[sIndex].text = fText;
        selectO.options[sIndex].value = fValue;

        //amke new one be selected
        selectO.options[sIndex].selected = true;

    }

    //note field that the values are stored is HARDCODED! 
    function recalculateOrder(formO,selectO) 
    { 
        
        var sep = ""; 
        var newOrderText = ""; 
        for (i = 0; i <= selectO.options.length-1; i++) 
        {    
            newOrderText += "" + sep + selectO.options[i].value; 
            sep = ":"; 
        } 
        formO.menuorder.value  = newOrderText; 
    } 


    function setValue(field, text) 
    {
       	field.value = text;
    
    }

	//set the right buttons
    function setButtons(formO,selectO)
    {

	var index         = selectO.selectedIndex;
	var selectLength  = selectO.length - 1;
	var Text  = selectO.options[index].text;
	var Value = selectO.options[index].value;


        //set change menu fields
        if (Text.indexOf(">")!=-1) {
        	document.getElementById('pagename').value = Text.substring(4,Text.length);
        } else {
                document.getElementById('pagename').value = Text;
        }
        document.getElementById('pagefile').value = Value;
        
	var up     = true;
	var down   = true;
	var left   = true;
	var right  = true;
	
	var deleteitem = true;


	if(index == 0)
	{
	    up    = false;
	    right = false;
	}

	if (index == 1&&Value.indexOf("+")!=-1)
	{
	    up    = false;
	}
	
	if(index == selectLength)
	{
	    down = false;
	}

	if (Value.indexOf("+") == -1)
	{
		left = false;
	} else
	{
		right = false;
	}
	
	
	//has submenu's
	if (index<selectLength&&Value.indexOf("+")==-1) {
		if (selectO.options[index+1].value.indexOf("+")!=-1) {
			deleteitem = false;
		}
	}
	
	
	
		
	var number = Value.indexOf('_');
	if (number!=-1) {
	    deleteitem = false;
	}
	
	if (up)         document.getElementById('up').src          = 'cms/image/arrow_up_on.jpg';    else document.getElementById('up').src          = 'cms/image/arrow_up_off.jpg';
	if (down)       document.getElementById('down').src        = 'cms/image/arrow_down_on.jpg';  else document.getElementById('down').src        = 'cms/image/arrow_down_off.jpg';
	if (left)  	document.getElementById('left').src  	   = 'cms/image/arrow_left_on.jpg';  else document.getElementById('left').src  	     = 'cms/image/arrow_left_off.jpg';
	if (right) 	document.getElementById('right').src       = 'cms/image/arrow_right_on.jpg'; else document.getElementById('right').src 	     = 'cms/image/arrow_right_off.jpg';
	if (deleteitem) document.getElementById('deleteitem').src  = 'cms/image/delete_on.jpg';      else document.getElementById('deleteitem').src  = 'cms/image/delete_off.jpg';

    }

