
function doit(_parent, _formname, _itemname, _action, _value, _text) 
{

	if (_parent)
	{
		f = parent.document.getElementById(_formname);
	}
	else
	{
		f = document.getElementById(_formname);
	} //if
//alert(f);
//	base = f[_itemname];
//	root = f[_itemname];

base = root = document.getElementById(_itemname);
//alert(base);
    switch (_action) {
        case 'add' :
            ++root.length;

            root.options[root.length-1].text  = _text;
            root.options[root.length-1].value = _value;
        break;

        case 'clear' :
            $meret = base.length-1;
            for($i=$meret; $i > -1; $i--) {
                    base.options[$i] = null;
            } //for
        break;
        
		case 'del' :
			$meret = base.length-1;
			for($i=$meret; $i > -1; $i--) { 
				if (base[$i].selected) {
					base[$i] = null;
				} //if
			} //for
		break;

		case 'setselval' :
            meret = base.length-1;
			for($i=meret; $i > -1; $i--) 
			{ 
				if (base[$i].value == _value) 
				{
					base[$i].selected = true;
				} //if
			} //for
		break;

		case 'setselvalonly' :
			meret = base.length-1;
			tru = false;
        		
			for($i=meret; $i > -1; $i--) 
			{ 
				if (base[$i].value == _value) 
				{
					base[$i].selected = true;
					tru = true;
				} //if
			} //for
			if (!tru)
			base[0].selected = true;
		break;

		case 'getselval' :
			return root.options[root.selectedIndex].value;
		break;

		case 'getseltext' :
			return root.options[root.selectedIndex].text;
		break;

        case 'selectall' :
			for($i=0; $i < base.length; $i++) {
				base[$i].selected = true;
            } //for
        break;
        
        case 'moveup' :
			tmp = new Array(2);
			sel = base.selectedIndex;
			all = base.length;
			if (sel > 0) {
				irany = -1;
				tmp[0] = base[sel+irany].text;
				tmp[1] = base[sel+irany].value;
				
				base[sel+irany].text = base[sel].text;
				base[sel+irany].value = base[sel].value;
				base[sel+irany].selected = true;
				base[sel].text = tmp[0];
				base[sel].value = tmp[1];
				base[sel].selected = false;
			} //if
        break;
        
        case 'movedown' :
			tmp = new Array(2);
			sel = base.selectedIndex;
			all = base.length;
			if (sel < all-1) {
				irany = 1;
				tmp[0] = base[sel+irany].text;
				tmp[1] = base[sel+irany].value;
				
				base[sel+irany].text = base[sel].text;
				base[sel+irany].value = base[sel].value;
				base[sel+irany].selected = true;
				base[sel].text = tmp[0];
				base[sel].value = tmp[1];
				base[sel].selected = false;
			} //if
        break;
    } //switch
} //function
