// JavaScript Document
function open_ext_link() 
{ 
    var liens = document.getElementsByTagName('a'); 
    // On récupère tous les liens (<a>) du document dans une variable (un array), ici liens. 
    // Une boucle qui parcourt le tableau (array) liens du début à la fin. 
    for (var i = 0 ; i < liens.length ; ++i)  { 
        // Si les liens ont un nom de class égal à lien_ext, alors on agit. 
        if (liens[i].className == 'extern')  { 
            liens[i].title = 'S\'ouvre dans une nouvelle fenêtre'; 
            // Au clique de la souris. 
            liens[i].onclick = function()  { 
                window.open(this.href); 
                return false; // On ouvre une nouvelle page ayant pour URL le href du lien cliqué et on inhibe le lien réel. 
            }; 
        } 
    } 
} 
function validEmail(form)
{
	valid = true;
	
	document.getElementById("validEmail").innerHTML='';
	
	if(document.getElementById('EmailFrom').value.length < 7)
	{
		document.getElementById('EmailFrom').class="warning";
		document.getElementById('validEmail').style.visibility="visible";
		document.getElementById("validEmail").innerHTML+="Vous devez entrer une adresse email valide.<br />";
		valid = false;
	}
	
	if(document.getElementById('Message').value.length == 0)
	{
		document.getElementById('EmailFrom').class="warning";
		document.getElementById('validEmail').style.visibility="visible";
		document.getElementById("validEmail").innerHTML+="Vous n'avez entré aucun message.";
		valid = false;
	}
	return valid;
}

function affichage_popup(nom_de_la_page, nom_interne_de_la_fenetre)
{
	window.open (nom_de_la_page, nom_interne_de_la_fenetre, config='height=200, width=700, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, directories=no, status=no')
}

function validSearch(form)
{
	ids = ["presentateur","exposant","invite","gala","autre"];
	for (i = 0; i < 5; i++) 
		if(document.getElementById(ids[i]).checked)
			return true;
			
	alert("Vous devez sélectionner au moins un type de personnes.\nSi ce critère n'est pas important, alors cocher (Peu importe)");
	return false;
}

function verifyCheck(field)
{
	nb = 0;
	for (i = 0; i < field.length; i++) 
		if(field.elements[i].type == "checkbox" && field.elements[i].checked && field.elements[i].id != "all")
			nb++
	document.getElementById("all").checked = (nb == 5);
	document.getElementById("invite_par").disabled = !document.getElementById("invite").checked;
}

function check(field) {
	for (i = 0; i < field.length; i++) 
		if(field.elements[i].type == "checkbox" && field.elements[i].id != "all")
			field.elements[i].checked = document.getElementById("all").checked;
	document.getElementById("invite_par").disabled = !document.getElementById("all").checked;
}

function toggleLayer( whichLayer)
{
  var elem, vis;
  if( document.getElementById ) // this is the way the standards work
	elem = document.getElementById( whichLayer );
  else if( document.all ) // this is the way old msie versions work
	  elem = document.all[whichLayer];
  else if( document.layers ) // this is the way nn4 works
	elem = document.layers[whichLayer];
  vis = elem.style;
  // if the style.display value is blank we try to figure it out here
  if(vis.display==''&&elem.offsetWidth!=undefined&&elem.offsetHeight!=undefined)
	vis.display = (elem.offsetWidth!=0&&elem.offsetHeight!=0)?'block':'none';
  vis.display = (vis.display==''||vis.display=='block')?'none':'block';
}

function toggleFactDiv()
{
	if(document.getElementById('togglefacturation') && document.getElementById('copier').checked == false)
		toggleLayer('togglefacturation')
	open_ext_link();
}

function valid(form) {
	var elem = ['Prue','Pcode_postal','Pville'];
	
	var emptyfields = '<br /><b>champ(s) vide(s)</b> : <br />';
	var emptychecks = '<br /><b>case(s) à cocher</b> : <br />';
	var text;
	
	form.elements['nom'].className = form.elements['nom'].className.replace(" warning","");
	
	if(form.elements['nom'].value == "")
	{
		emptyfields += 'Partie Identité : <br /> - nom<br />';
		form.elements['nom'].className += " warning";
	}
		
	
	text = "<br />Partie Coordonnées Personnelles : <br />";
	for(i=0;i<3;i++)
	{
		form.elements[elem[i]].className = form.elements[elem[i]].className.replace(" warning","");
		
		if(form.elements[elem[i]].value == "")
		{
			text += ' - '+elem[i].slice(1).replace("_"," ")+'<br />';
			form.elements[elem[i]].className += " warning";
		}
			
	}
	
	form.elements['Pemail'].className = form.elements['Pemail'].className.replace(" warning","");
	form.elements['Ptel'].className = form.elements['Ptel'].className.replace(" warning","");
	form.elements['PPort'].className = form.elements['PPort'].className.replace(" warning","");
	
	if(form.elements['Pemail'].value == "" && form.elements['Ptel'].value == "" && form.elements['PPort'].value == "")
	{
		text += 'vous devez renseigner une adresse email ou un numéro de téléphone ou un numéro de téléphone portable pour poursuivre<br />';
		
		form.elements['Pemail'].className += " warning";
		form.elements['Ptel'].className += " warning";
		form.elements['PPort'].className += " warning";
	}
	
	if(text != "<br />Partie Coordonnées Personnelles : <br />")
		emptyfields += text;

	if(form.elements['copier'].checked == false)
	{
		text = "<br />Partie Coordonnées de Facturation : <br />";
		for(i=0;i<3;i++)
		{
			form.elements[elem[i].replace("P","F")].className = form.elements[elem[i].replace("P","F")].className.replace(" warning","");
			if(form.elements[elem[i].replace("P","F")].value == "")
			{
				text += ' - '+elem[i].slice(1)+'<br />';
				form.elements[elem[i].replace("P","F")].className += " warning";
			}
				
		}
		
		form.elements['Femail'].className = form.elements['Femail'].className.replace(" warning","");
		form.elements['Ftel'].className = form.elements['Ftel'].className.replace(" warning","");
		form.elements['FPort'].className = form.elements['FPort'].className.replace(" warning","");
		
		if(form.elements['Femail'].value == "" && form.elements['Ftel'].value == "" && form.elements['FPort'].value == "")
		{
			text += 'vous devez renseigner une adresse email ou un numéro de téléphone ou un numéro de téléphone portable pour poursuivre';

			form.elements['Femail'].className += " warning";
			form.elements['Ftel'].className += " warning";
			form.elements['FPort'].className += " warning";
		}

		if(text != "<br />Partie Coordonnées de Facturation : <br />")
			emptyfields += text+'<br />';
			
	}
	
	if(!(form.elements['Premjour'].checked | form.elements['Deuxjour'].checked))
		emptychecks += ' - au moins un jour de présence<br />';
		
	if(!(form.elements['cheque'].checked | (form.elements['virement'].checked & (form.elements['virement'].disabled == false))))
		emptychecks += ' - un moyen de paiement<br />';
	
	if(!(form.elements['ValidCond'].checked))
		emptychecks += ' - conditions d\'annulation de transaction';
	
	if(emptyfields != "<br /><b>champ(s) vide(s)</b> : <br />" || emptychecks != "<br /><b>case(s) à cocher</b> : <br />")
	{
		document.getElementById("NValidAnswers").className.replace(" warning","");
		document.getElementById("NValidAnswers").className += " warning";
		document.getElementById("NValidAnswers").innerHTML='Attention : ';
		
		if(emptyfields != '<br /><b>champ(s) vide(s)</b> : <br />')
			document.getElementById("NValidAnswers").innerHTML += emptyfields;
		if(emptychecks != '<br /><b>case(s) à cocher</b> : <br />')
			document.getElementById("NValidAnswers").innerHTML += emptychecks;
		
		return false;
	}
	return true;
}

function disableAll()
{
	form = document.getElementById("Inscription");
	if(form)
		for(i=0;i<form.elements.length;i++)
		{
			if(form.elements[i].type == "text" || form.elements[i].type == "submit" || form.elements[i].type == "checkbox")
				form.elements[i].disabled= true;
		}
}


function limitText(limitField, limitCount, limitNum) {
	if (limitField.value.length > limitNum) {
		limitField.value = limitField.value.substring(0, limitNum);
	} else {
		limitCount.value = limitNum - limitField.value.length;
	}
}

