function listboxListItemAdd(listboxID,dataTextField,dataValueField){
	var ctr = 0;
	var breakthis = false;
	while(ctr < document.getElementById(listboxID).length ){

		if(document.getElementById(listboxID).options[ctr].value==dataValueField){
			breakthis = true;
			document.getElementById(listboxID).options[ctr].selected = false;
		}
		ctr++;
	}

	if(!breakthis ){
		document.getElementById(listboxID).options[ctr] = new Option(dataTextField,dataValueField);
		document.getElementById(listboxID).options[ctr].selected = true;
	}
}

function listboxListItemUpdate(listboxID,dataTextField,dataValueField){
	var ctr = 0;
	var breakthis = false;
	while(ctr < document.getElementById(listboxID).length ){

		if(document.getElementById(listboxID).options[ctr].value==dataValueField){
			document.getElementById(listboxID).options[ctr].text = dataTextField;
			document.getElementById(listboxID).options[ctr].selected = true;
		}
		ctr++;
	}

}


function listboxListItemDelete(listboxID){
	var listbox = document.getElementById(listboxID);
	i=0;
	while(i<listbox.length){
		if (listbox.options[i].selected == true ) {
			listbox.options[i] = null; 
		}else{
			i++;
		}
	}
}


function listboxListItemMoveUp(listboxID){
	var listbox = document.getElementById(listboxID);
	var listItem1, listItem2;
	for(i=0; i < listbox.length; i++){
		if (listbox.options[i].selected == true && i !=0 ) {
			listItem1 = new Option(listbox.options[i-1].text,listbox.options[i-1].value);
			listItem2 = new Option(listbox.options[i].text,listbox.options[i].value);
			
			listbox.options[i-1] = listItem2;
			listbox.options[i] = listItem1;
			listbox.options[i-1].selected = true;
			return;
		}
	}
}

function listboxListItemMoveDown(listboxID){
	var listbox = document.getElementById(listboxID);
	var listItem1, listItem2;
	
	for(i=0; i < listbox.length; i++){
		if (listbox.options[i].selected == true && i+1 < listbox.length ) {
			listItem1 = new Option(listbox.options[i].text,listbox.options[i].value);
			listItem2 = new Option(listbox.options[i+1].text,listbox.options[i+1].value);
			
			listbox.options[i] = listItem2;
			listbox.options[i+1] = listItem1;
			listbox.options[i+1].selected = true;
			return;
		}
	}

}
		
function listboxCopy(listboxID,hiddenfieldID){
	var listbox = document.getElementById(listboxID);
	var hiddenfield = document.getElementById(hiddenfieldID);
	var str = "";
	
	for(i=0; i < listbox.length; i++){
		if(str != "")
			str += ",";
		str += listbox.options[i].value;
	}
	
	hiddenfield.value = str;
}

function listboxCopyText(listboxID,hiddenfieldID){
	var listbox = document.getElementById(listboxID);
	var hiddenfield = document.getElementById(hiddenfieldID);
	var str = "";
	
	for(i=0; i < listbox.length; i++){
		if(str != "")
			str += ",";
		str += listbox.options[i].text;
	}
	
	hiddenfield.value = str;
}


function listboxSelectedValue(listboxID){
	var listbox = document.getElementById(listboxID);
	
	for(i=0; i < listbox.length; i++){
		if (listbox.options[i].selected == true && i < listbox.length ) {
			return listbox.options[i].value;
		}
	}
	return false;
}

function listboxSelectedText(listboxID){
	var listbox = document.getElementById(listboxID);
	
	for(i=0; i < listbox.length; i++){
		if (listbox.options[i].selected == true && i < listbox.length ) {
			return listbox.options[i].text;
		}
	}
	return false;
}