function sort(a,b){
	a=a.toLowerCase();
	b=b.toLowerCase();
	if (a<b) return -1; //kleiner
	if (a>b) return 1; //groter
	return 0; //gelijk
}

function selectOptions(form){
	left = document.getElementById(form.id + ":left");
	right = document.getElementById(form.id + ":right");
	input = document.getElementById(form.id + ":input");
	for (var i = 0; i < left.options.length; i++) {
		if (left.options[ i ].selected) {
			lengthr = right.options.length;
			for(var j = 0; j < lengthr; j++) {
				if(sort(left.options[ i ].value, right.options[ j ].value) == -1){
					var oOption = document.createElement("OPTION");
					var title = left.options[i].text + " " +  left.options[i].value;
					right.options.add(oOption, j);
					oOption.text = left.options[i].text;
					oOption.value = left.options[i].value;
					oOption.setAttribute('title',title);
					left.remove(i);
					j = lengthr + 5;
				}
			}
			if(j == right.options.length){
				var oOption = document.createElement("OPTION");
				var title = left.options[i].text + " " +  left.options[i].value;
				right.options.add(oOption, j);
				oOption.text = left.options[i].text;
				oOption.value = left.options[i].value;
				oOption.setAttribute('title',title);
				left.remove(i);
			}
			i--;
		}
	}
	input.value = "";
	for (i = 0; i < right.options.length; i++) {
		if(input.value  != null && input.value  != ""){
			input.value  += ",";
		}
		input.value += right.options[ i ].value;
	}
}

function deSelectOptions(form){
	left = document.getElementById(form.id + ":left");
	right = document.getElementById(form.id + ":right");
	input = document.getElementById(form.id + ":input");
	for (var i = 0; i < right.options.length; i++) {
		if (right.options[ i ].selected) {
			lengthl = left.options.length;
			for(var j = 0; j < lengthl; j++) {
				if(sort(left.options[ j ].value, right.options[ i ].value) == 1){
					var oOption = document.createElement("OPTION");
					left.options.add(oOption, j);
					oOption.text = right.options[i].text;
					oOption.value = right.options[i].value;
					right.remove(i);
					j = lengthl + 5;
				}
			}
			if(j == left.options.length){
				var oOption = document.createElement("OPTION");
				left.options.add(oOption, j);
				oOption.text = right.options[i].text;
				oOption.value = right.options[i].value;
				right.remove(i);
			}
			i--;
		}
	}
	input.value = "";
	for (i = 0; i < right.options.length; i++) {
		if(input.value  != null && input.value  != ""){
			input.value  += ",";
		}
		input.value += right.options[ i ].value;
	}
}
