/**
* <script>
*
* EasyGUI Combobox Base Script
*
* @author 		Gaetan Lauff	<glauff@plansoft.de>
* @copyright	Plan Software GmbH, 2001 - 2004
* @package 		Base
*
* This is not free software.
*/

function initCombobox(id) {
	var combobox 	= document.isycat[id];
		
	if (combobox.getAttribute('multiple') && combobox.name.indexOf('[') == -1) {
		combobox.name += '[]';
		
		if (combobox.getAttribute('selectall') != null) {			
			multipleCombos.push(combobox.id);
		}
	}
		
	if (combobox.getAttribute('enhanced') == null) {
		setComboboxItems(id);
		
		if (combobox.getAttribute('multiple')) {
			setSelectedItemsInMultipleCombobox(id);
		}
	}
	
	if (combobox.getAttribute('enhanced') != null) {
		renderEnhancedCombobox(id);
		initEnhancedCombobox(id);	
	}
	
	if (combobox.getAttribute('multiplelist') != null) {
		renderMultipleList(id);	
	}
}

function resetCombo(id) {
	var element = document.getElementById(id);
	var newItems = "NULL=|";
	element.setAttribute('items', newItems);
	initCombobox(element.id);
}

function selectionChange(id, itemId) {
	var combo = getCombobox(id);
	var combobox = document.isycat[id];
	
	if (combo) {
		for (i=0;  i < combo.Rows.rows.length; i++) {
			if (combo.Rows.rows[i].value == itemId) {
				colIdx = parseInt(combobox.getAttribute('displaycol')) - 1;
				combo.Text.value = combo.Rows.rows[i].cells[colIdx].text;
				document.isycat[combobox.id].options[0].value = itemId;
				document.isycat[combobox.id].options[0].selected = true;
			}
		}
	} else {
		for (i=0; i < combobox.length; i++) {
			if (combobox.options[i].value == itemId) {
				combobox.selectedIndex = i;
				if (document.fireEvent) {
					combobox.fireEvent('onchange');
				}
				break;
			}
		}
	}
}

function setNewItemList(id, list) {
	combobox = document.isycat[id];
	combobox.setAttribute('items', list);
	initCombobox(id);
}

function setSubmitValue(evt) {
	var element = getElement(evt);
	var combo = document.isycat[element.comboboxId];
	combo.options[0].value = element.value;
	combo.options[0].selected = true;
}

function getComboValue(id) {
	return document.isycat[id].options[document.isycat[id].selectedIndex].value;
}