var sl_current = null;

function sl_toggle_display(sl_id) {
	var html_element = $(sl_id+'_list');
	var z_index;

	if(html_element.getStyle('display') == 'block') {
		html_element.hide();
		z_index = 0;
	} else {
		if(sl_current !== null) {
			$(sl_current+'_list').hide();
		}
		html_element.show();
		z_index = -1;
	}

	sl_bg_z_index(sl_id,z_index);
	sl_current = sl_id;
}

function sl_bg_z_index(sl_id, i) {

	if($$('body')[0].hasClass('ie') === false) { return; }

	if(i==0) {
		$(sl_id+'_list').setStyle('position', 'absolute');
	} else {
		$(sl_id+'_list').setStyle('position', 'absolute');
	}
}

function sl_update(sl_id, li, li_value) {

	// set the current li style
	var ul = $(sl_id+'_list');
	ul.getChildren('li').each(function(item) {
		item.removeClass('selected');
	});
	$(li).addClass('selected');

	// update the input value
	if(li_value == 0) {
		li_value = '';
	}
	$(sl_id+'_input').value = li_value;

	// update the title
	$(sl_id+'_title').innerHTML = li.innerHTML;

	// hide the list
	sl_toggle_display(sl_id);
}

function sl_update_multi(sl_id, li, li_value,ev) {
	// set the current li style
	var ul = $(sl_id+'_list');

	// update the input value
	if(li_value == 0) {
		li_value = '';
	}

	if(ev.ctrlKey) {
		allsel=$(sl_id+'_input').value.split(',');
		if($(li).hasClass('selected')) {
			if(allsel.length > 1) {
				allsel.erase(li_value);
				$(li).removeClass('selected');
			}
		} else {
			allsel.push(li_value);
			$(li).addClass('selected');
		}
		$(sl_id+'_input').value = allsel.join(',');
/*
		if(allsel.length==1) {
			$(sl_id+'_title').innerHTML = li.innerHTML;
		}
*/		
	} else {
		ul.getChildren('li').each(function(item) {
			item.removeClass('selected');
		});
		$(li).addClass('selected');
		
		$(sl_id+'_input').value = li_value;
	
		// update the title
		$(sl_id+'_title').innerHTML = li.innerHTML;
	
		// hide the list
		sl_toggle_display(sl_id);
	}
}

function cb_actions(cb_id, div, val) {

	var decheck = $(div).hasClass('checked');

	if(decheck) {
		$(cb_id+'_input').set('value', '');
		$(div).removeClass('checked');
	} else {
		$(cb_id+'_input').set('value', val);
		$(div).addClass('checked');
	}
}