/*
 * File: multichoice.js;
 * Version: 1.0;
 * site: Pictime;
 * original script : Meetic 
 * Comment: Permit a multi select box;
 */
 
 
/*************************************/
/* DHTML Neccesary files */
/*************************************/
 
 var DHTML = (document.getElementById || document.all);
 
 /* object */
function getObj(id) {
	try{
		if(document.getElementById) {
			this.style = document.getElementById(id).style;
			return document.getElementById(id);
		}
		else if(document.all) {
			this.style = document.all[id].style;
			return document.all[id];
		}
	}
	catch(e) {
		return false;
	}
}
 
 function dispLayer(id,flag) {
	if(!DHTML) return;
	var obj = new getObj(id);
	obj.style.display = (flag)? "block" : "none";
}

function ExpandCollaps(id) {
	if(!DHTML) return;
	var o = new getObj(id);
	var flag;
	switch(o.style.display) {
		case "block" :
			flag = 0;
			break;
		case "none" :
		default :
			flag = 1;
	}
	dispLayer(id,flag);
}

/*************************************/
/* Manage result display */
/*************************************/

/* Manage result display :
 cbx = checkbox id (str)
 val = not used
 maxi = not used
 */
function addChoice(cbx,val,maxi) {
	var pref = 'rech_';
	var ext = '_label';
	var selId = cbx + "_res";
	var block = document.getElementById(cbx + '_cont');
	if(!block) return;

	var spTab = block.getElementsByTagName("span");
	var res = "";
	for(var i=0; i<spTab.length; i++) {
		var spId = spTab[i].id;
		if(spId.indexOf(pref) != -1) {
			var cbxId = spId.substr(0,spId.indexOf(ext));
			if(getObj(cbxId).checked) {
				res += (res != "" ? ", " : "") + getObj(spId).innerHTML;
			}
		}
	}

	getObj(selId).innerHTML = res;
}

/*************************************/
/* Manage selects display */
/*************************************/

var openedSelect = 0; //opened select id var
var waitSelect; //timeout var

/* close the opened select */
function closeSelectbox() {
	if(openedSelect) dispLayer(openedSelect,0);
	openedSelect = 0;
}

/* Display the select
 id = layer id or 0 (str/0)
 */
function dispSelectbox(id) {
	if(id) {
		if(openedSelect) {
			dispLayer(openedSelect,0);
			if(openedSelect == id) {
				openedSelect = 0;
				return;
			}
			openedSelect = 0;
		}
		ExpandCollaps(id);
		openedSelect = id;
	}
	else if(openedSelect) {
		waitSelect = setTimeout("closeSelectbox()",300);
	}
}

/* EOF */

