document.JSMenu = new Object();
document.JSMenu.Active_SM_index=false;

document.JSMenu.Init = function(){
	if(document.getElementById){
		var sm_index=1, sm_element, sm_sub_element;
		
		while(sm_element=document.getElementById("sous_menu_"+sm_index)){
			sm_element.sm_index	= sm_index;
			if(sm_label_element=getChildById(sm_element, 'label', true)){
				sm_element.onmouseover= function(){
					var sm_label_element=getChildById(this, 'label', true);
					sm_label_element.style.color='#FF9900';
					sm_label_element.style.fontWeight='bold';
				}
				sm_element.onmouseout = function(){
					var sm_label_element=getChildById(this, 'label', true);
					sm_label_element.style.color='#003366';
					sm_label_element.style.fontWeight='';
				}
				sm_element.onclick	= function(){document.JSMenu.OpenSM(this.sm_index);};
			}
			if(sm_sub_element = getChildById(sm_element, 'sub')){
				sm_element.removeChild(sm_sub_element);
				sm_element.sub_element=sm_sub_element;
			}
			sm_index++;
		}
	}
}

document.JSMenu.OpenSM=function(sm_index){
	var sm_element=document.getElementById("sous_menu_"+sm_index), sm_label_element=getChildById(sm_element, 'label', true);

	if(document.JSMenu.Active_SM_index)document.JSMenu.CloseSM(document.JSMenu.Active_SM_index);
	if(sm_element.sub_element)sm_element.appendChild(sm_element.sub_element);
	if(sm_label_element)sm_label_element.className='label_actif';
	sm_element.style.cursor='default';
	document.JSMenu.Active_SM_index=sm_index;
}

document.JSMenu.CloseSM=function(sm_index){
	var sm_element=document.getElementById("sous_menu_"+sm_index), sm_label_element=getChildById(sm_element, 'label', true);	
	
	if(sm_element.sub_element)sm_element.removeChild(sm_element.sub_element);
	if(sm_label_element)sm_label_element.className='';
	sm_element.style.cursor='pointer';
}



document.JSMenu.pageOpen=function(page_ref){
	var page=document.getElementById('page');
	page.innerHTML='Chargement en cours...' ;
	xhr_send_load('pages/'+page_ref, '', document.JSMenu.pageAffiche, function(code){document.JSMenu.pageAffiche("Erreur de connexion au serveur... (code "+code+")")});
	return false;
}
		
document.JSMenu.pageAffiche=function(str_html_data){
	document.getElementById('page').innerHTML=str_html_data;
	
	var preg = new RegExp(/<!--JS-EVAL-BLOCK(.|[^.])*?JS-EVAL-END-->/gi), js_array, js_code="";
	if(js_array = preg.exec(str_html_data)){
		js_code  = js_array.join("\n");
		js_code=js_code.replace(/<!--JS-EVAL-BLOCK/gi,"");
		js_code=js_code.replace(/JS-EVAL-END-->/gi,"");
		eval(js_code);
	}
}