			function cListBox(obj)
			{				
				if ((typeof obj) == 'object') {
					this.listBox = obj;
					this.addListXML = addListXML;
					this.addOption = addOption;
					this.clearSelect = clearSelect;
					this.shiftUpOption = shiftUpOption;
					this.shiftDownOption = shiftDownOption;
				}
			}
			
			function loader(url)
			{
				if (this.listBox) {
					var oLoader = new Ajax.post(url,onloader);
					oLoader.oListBox = this;
				}
			} 	
			
			function addListXML(xml)
			{				
				if (xml){
					var child = xml.childNodes;												
					for (i = 0; i < child.length; i++)
					{	
						if (this.isSelected == child[i].getAttribute('value')) this.addOption(child[i].getAttribute('name'),child[i].getAttribute('value'),0,1);			
						else this.addOption(child[i].getAttribute('name'),child[i].getAttribute('value'),0,0);						
					}
				}
			}
	
			function addOption (text, value, isDefaultSelected, isSelected)
			{
				if (this.listBox) {
					$(this.listBox).append('<option '+(isSelected?'selected':'')+' value="'+value+'">'+text+'</option>');
				}
			}
			
			function clearSelect()
			{					
				 if (this.listBox) $(this.listBox).find('option').remove();
			}
			
			function shiftUpOption (iIndex)
			{
				if (iIndex > 0) 
				{
					var oOption = this.listBox.options[iIndex];
					var oPrevOption = this.listBox.options[iIndex-1];
					this.listBox.insertBefore(oOption, oPrevOption);
				}
			}
			
			function shiftDownOption (iIndex)
			{
				if (iIndex < this.listBox.options.length - 1)
				{
					var oOption = this.listBox.options[iIndex];
					var oNextOption = this.listBox.options[iIndex+1];
					this.listBox.insertBefore(oNextOption, oOption);
				}
			}	
