/*Fonctions pour le menu déroulant*/
function montre(id,nbm){
	var nb_sousmenus=nbm;
	for (var i=0; i<nb_sousmenus; i++){
		var currenti=100+i;
		if(id==currenti){
			document.getElementById('smenucat'+currenti).style.display = 'block';
		}
		else{
			document.getElementById('smenucat'+currenti).style.display = 'none';
		}
	}
}

function frm_submit(){
	envoyer=true;
	form = document.getElementById('frmProjetH');
	t = form.type;
	/* Nettoyage */
	if(form.p_toiture.value=="0")
		form.p_toiture.value="";
	if(form.p_toiture.value==""){
		form.type_toiture.selectedIndex=0;
	}
	if(form.p_etage.value=="0")
		form.p_etage.value="";
	if(form.p_rdc.value=="0")
		form.p_rdc.value="";
	if(form.p_terrasse.value=="0")
		form.p_terrasse.value="";
	if(form.p_ssol.value=="0")
		form.p_ssol.value="";
	ss = form.ssenterre;
	if(form.p_ssol.value==""){
		ss[0].checked=false;
		ss[1].checked=false;
	}
	/* Test de remplissage */
	if(!t[0].checked && !t[1].checked && !t[2].checked && envoyer){
		BoiteAlerte ("rouge","Vous devez sélectionner un type de projet.");
		envoyer=false;
	}
	if(form.cp.value=="" && envoyer){
		BoiteAlerte ("rouge","Vous entrer votre code postal.");
		envoyer=false;
	}
	var valid_cp = /^[0-9]{5,5}$/i;
	if(!valid_cp.test(form.cp.value) && envoyer){
		BoiteAlerte ("rouge","Votre code postal est invalide.");
		envoyer=false;
	}
	if(form.altitude.value==0 && envoyer){
		BoiteAlerte ("rouge","Vous définir votre altitude.");
		envoyer=false;
	}
	if(form.p_toiture.value!="" && envoyer){
		if(form.type_toiture.value==0){
			BoiteAlerte ("rouge","Vous devez sélectionner un type de plancher haut.");
			envoyer=false;
		}
	}
	if(form.p_ssol.value!="" && envoyer){
		ss = form.ssenterre;
		if(!ss[0].checked && !ss[1].checked){
			BoiteAlerte ("rouge","Vous devez sélectionner un type de sous-sol.");
			envoyer=false;
		}
	}
	if((form.p_toiture.value=="" && form.p_rdc.value=="" && form.p_etage.value=="" && form.p_terrasse.value=="" && form.p_ssol.value=="") && envoyer){
		BoiteAlerte ("rouge","Vous devez sélectionner au minimum un plancher.");
		envoyer=false;
	}
	/* Test de la validité des portées inscrites */
	if((!test_portee('p_toiture') || !test_portee('p_etage') || !test_portee('p_rdc') || !test_portee('p_terrasse') || !test_portee('p_ssol')) && envoyer ){
		envoyer=false;
	}
	/* Finalement envoi */
	if (envoyer){
		a=document.getElementById('todo');
		if(a.value!="")
			form.todo.value=a.value;
		else
			form.todo.value="Valider";
		form.submit();
	}
}
function test_portee(champs){
	form = document.getElementById('frmProjetH');
	var p = form[champs].value;
	p = p.replace(",",".");
	if(p!="" && p!=0){
		model1=/^[0-9.]{1,4}$/i
		if(!model1.test(p)){
			BoiteAlerte ("rouge","Portée invalide, elle doit être exprimée en mètres avec un pas de 10 centimètres.<br/>Exemples : 3 ou 1,2");
			setTimeout("form['"+champs+"'].focus();",1);
			return false;
		}
		else{
			var pf = parseFloat(p);
			if (pf>12){
				BoiteAlerte ("normal","Pour une portée supérieure à 12m,<br/>veuillez contacter notre bureau d'études.");
				setTimeout("form['"+champs+"'].focus();",1);
				return false;
			}
			else{
				var model2 = /^[0-9]{1,2}$/i;
				var model3 = /^[0-9]{1,2}.[0-9]{1,1}$/i;
				if(!model2.test(pf) && !model3.test(pf)){
					BoiteAlerte ("rouge","Portée invalide, elle doit être exprimée en mètres avec un pas de 10 centimètres.<br/>Exemples : 3 ou 1,2");
					setTimeout("form['"+champs+"'].focus();",1);
					return false;
				}
			}
		}
	}
	return true;
}

function switch_typesolution(txt){
	champstyp=document.getElementById('typesolution');
	champstyp.value=txt;
	champsaction=document.getElementById('todo');
	champsaction.value="SwitchTypeSolution";
	//frm_submit();
	form = document.getElementById('frmProjetH');
	form.submit();
}

function voir_solution(ids,tps){ //Utilisé pour faire afficher une solution ou retourner à la liste des solutions si paramêtres vides
	champsid=document.getElementById('idsolution');
	champsid.value=ids;
	champsid=document.getElementById('typesituation');
	champsid.value=tps;
	champsaction=document.getElementById('todo');
	champsaction.value="AfficherSolution";
	frm_submit();
}

function BoiteAlerte(classe,message){
	b = document.getElementById('boiteMessage');
	c = document.getElementById('contenuBoiteMessage'); 
	c.innerHTML="<div class='"+classe+"'>"+message+"</div>";
	b.style.visibility = "visible";
}


function BoiteAlerteFerme(){
	document.getElementById('boiteMessage').style.visibility = "hidden";
}

function showTooltip(e, nomTooltip){
	if (!e) var e = window.event;
	//window.alert("e="+e);
	if (e.pageX || e.pageY){ posx = e.pageX; posy = e.pageY; }
	else if (e.clientX || e.clientY){
		posx = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
		posy = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
	}

	h=120;
	if (document.all){ 
		el=eval(nomTooltip); 
		h=el.offsetHeight; 
	}
	else{ el = document.getElementById(nomTooltip); h=el.offsetHeight; }
	// decale
	posy-=h+55; if (posy<0) posy=0;
	posx+=-10;

	if (document.all){
		el=eval(nomTooltip);
		el.style.left=posx+'px';
		el.style.top=posy+'px';
		el.style.visibility="visible";
	}
	else if (document.getElementById){
		el = document.getElementById(nomTooltip);
		el.style.left=posx+'px';
		el.style.top=posy+'px';
		el.style.visibility="visible";
	}
	//alert ("entre")
}
function hideTooltip(nomTooltip){
	if (document.all){
		el=eval(nomTooltip);
		el.style.visibility="hidden";
	}
	else if (document.getElementById){
		el = document.getElementById(nomTooltip);
		el.style.visibility="hidden";
	}
	//alert ("sort");
}

function switch_curseur(id){
	cd=document.getElementById('curdefaut').value;
	c1=document.getElementById('cur1');
	c2=document.getElementById('cur2');
	c3=document.getElementById('cur3');
	c4=document.getElementById('cur4');
	nm='/img/curseur';
	xt='.gif';
	switch(id){
		case '0':
			c1.src=nm+'1'+xt;
			c2.src=nm+'2'+xt;
			c3.src=nm+'3'+xt;
			c4.src=nm+'4'+xt;
			break;
		case '1':
			c1.src=nm+'1_over'+xt;
			c2.src=nm+'2'+xt;
			c3.src=nm+'3'+xt;
			c4.src=nm+'4'+xt;
			break;
		case '2':
			c1.src=nm+'1'+xt;
			c2.src=nm+'2_over'+xt;
			c3.src=nm+'3'+xt;
			c4.src=nm+'4'+xt;
			break;
		case '3':
			c1.src=nm+'1'+xt;
			c2.src=nm+'2'+xt;
			c3.src=nm+'3_over'+xt;
			c4.src=nm+'4'+xt;
			break;
		case '4':
			c1.src=nm+'1'+xt;
			c2.src=nm+'2'+xt;
			c3.src=nm+'3'+xt;
			c4.src=nm+'4_over'+xt;
			break;
		default:
			switch(cd){
				case '1':
					switch_curseur('1');
					break;
				case '2':
					switch_curseur('2');
					break;
				case '3':
					switch_curseur('3');
					break;
				case '4':
					switch_curseur('4');
					break;
				default:
					switch_curseur('0');
					break;
			}
			break;
	}
}

function switch_curseur_defaut(id){
	cd=document.getElementById('curdefaut');
	cd.value=id;
}

function switch_vig(id,url){
	document.getElementById(id).src=url;	
}

function Display(div) {
  // div: element a afficher
  // c
  if (document.getElementById(div).style.display == "none"){
    // Cas ou le div est cache
    document.getElementById(div).style.display = "block";
    //document.getElementById(opener).className = "open";
    
  } else {
    // On le cache
    document.getElementById(div).style.display = "none";
    //document.getElementById(opener).className = "close";
   }
}