//------------------------------------------------------------------------p_transfert
//fonction pour transferer les elements du formulaire si la validation est bonne
function p_transfert() // d=document.frm1
{

d = document.frm1;

  if (fct_validation(d)){
  
		//alert('Valide');
		return(true);
 	 }else{
		//alert('non-Valide');
		return(false);
	 }
}	


function p_validons()
{
d = document.frm2;

	if(fct_contact_form(d)){
		//alert('Valide');
		return(true);
	}else{
		//alert('non-Valide');
		return(false);
	}
}

//------------------------------------------------------fct_validation_form
//Fonction pour valider le formulaire de contact
function fct_contact_form(d){
	
var valid_contact = true;
expCourriel = 	/^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i;

if(fct_estVide(d.elements['txtNom'])){
	//alert(1)
	valid_contact = false;
}
if(fct_regExp(expCourriel, d.elements['txtCourriel'])){
	//alert(2)
	valid_contact = false;
}
if(fct_estVide(d.elements['txtSujet'])){
	//alert(2,2)
	valid_contact = false;
}
if(fct_estVide(d.elements['txtMessage'])){
	//alert(3)
	valid_contact = false;
}
//alert(4)
return(valid_contact);
}

//------------------------------------------------------fct_validation
//fonction pour valider les champs 	
function fct_validation(d) //  d=document.frm1
{
//alert(1);
var valid= true;
expCourriel = /^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i;
expAppreciation = /^\d$|^[1][0]$/;

//Validation beton infaillible
if(fct_estVide(d.elements['txtNom'])){
	//alert(1)
	valid = false;
}
if (fct_estVide(d.elements['txtNom_en'])){
	//alert(2)
	valid = false;
}
if(fct_estVide(d.elements['txtDescription'])){
	valid = false;
}
if(fct_estVide(d.elements['txtDescription_en'])){
	valid = false;
}
if (fct_estVide(d.elements['txtURL'])){
	//alert(3)
	valid = false;
}
if (fct_estVide(d.elements['intCote'])){
	//alert(3)
	valid = false;
}else if(fct_regExp(expAppreciation, d.elements['intCote'])){
	valid = false;
}

if (fct_estVide(d.elements['txtDate'])){
	//alert(3)
	valid = false;
}
if (fct_estVide(d.elements['txtHauteur'])){
	//alert(4)
	valid = false;
}else if(fct_estNumerique(d.elements['txtHauteur'])){
	valid = false;
}
if (fct_estVide(d.elements['txtLargeur'])){
	//alert(5)
	valid = false;
}else if(fct_estNumerique(d.elements['txtLargeur'])){
	valid = false;
}
if(fct_checkBoxes(d)){
	//alert('checkBox')
	valid = false;
}
//alert(4)
return(valid)
}

// ----------------------------fct_regExp
//fonction pour valider les expressions régulieres
function fct_regExp(expression, element)
{
   if (expression.test(element.value) == false)
     {
	  p_message(element);
	   return(true);
	 }else{
		p_affiche_neutre(element)
	 }
}

//*---------------------------------------fct_liste
//Vérifie si un element de la liste a été sélectionné
function fct_liste(liste)
{
if (liste.selectedIndex ==0)
{
	alert("Vous devez choisir une province dans la liste");
	return (false);
}
return(true);
}
//*--------------------------------------------fct_checkBoxes
//Vérifie si une element case a été coché
function fct_checkBoxes(d) {
	if (d.chckType[0].checked == false &&
	    d.chckType[1].checked == false &&
	    d.chckType[2].checked == false &&
		d.chckType[3].checked == false &&
		d.chckType[4].checked == false)
		{
		//alert(d.chckType[0].id)
		elementCode = document.getElementById('code_' + d.chckType[0].id);
		elementCode.innerHTML = "Cocher un type";
		return(true)
	}else{
		elementCode = document.getElementById('code_' + d.chckType[0].id);
		elementCode.innerHTML = "";
	}
}

//--------------------------------------fct_nonVide
//Vérifie que le champ contient qqchose
function fct_estVide(element){
	if (element.value == "")
	{
		p_affiche(element);
		return(true);
	}else{
		p_affiche_neutre(element);
	}
}

//-----------------------------------fct_estNumerique
function fct_estNumerique(element){
	var nombre = element.value;
	var ValidChars = "0123456789.";
   	var IsNumber=true;
   	var Char;
	
 
   for (i = 0; i < nombre.length && IsNumber == true; i++) 
      { 
	  //alert(nombre.charAt(i))
      Char = nombre.charAt(i); 
      if (ValidChars.indexOf(Char) == -1){
		//alert('pas un nombre');
		p_message(element);
		return(true);
		}
      }
	//alert('nombre');
	p_affiche_neutre(element);

}
//--------------------------------------p_affiche
//affiche le champ fautif en orange
function p_affiche(element)
{
	elementCode = document.getElementById('code_'+element.id)
	elementCode.innerHTML = "Entrer votre " + element.name.slice(3);
	element.style.backgroundColor = "#febc56";
	element.focus();
	
}


//--------------------------------------p_affiche_neutre
//affiche le champ normal apres correction
function p_affiche_neutre(element)
{
	elementCode = document.getElementById('code_'+element.id)
	elementCode.innerHTML = ""
	element.style.backgroundColor = "#FFFFFF";
}


//----------------------------------------p_message
//fonction qui affiche le message d'erreur et la zone fautive
// ---------------------------------
function p_message(element)
{
	elementCode = document.getElementById('code_'+element.id)
	elementCode.innerHTML = element.name.slice(3) + " invalide";

	//element.value = element.name.slice(3) + " invalide";
	element.style.backgroundColor = "#febc56";
	element.focus()
}	  
	
//--------------------------------------------clearForm
//Fonction utilisé pour remettre le formulaire a 0
function clearForm()
{
d= document.frm1;
	for (var i = 0 ; i < d.elements.length; i++)
	{
		if (d.elements[i].type == "text" || d.elements[i].type == "textarea")
		{
			d.elements[i].value = "";
		}
		if (d.elements[i].type == "checkbox")
		{
			d.elements[i].checked = false;
		}
	}
}

//--------------------------------------------------p_date
//fonction utilisé pour recuperer les options des listes déroulantes et généré la date choisi
function p_date(){
//alert(document.frm1.lstJour.value)
//alert(document.frm1.lstMois.value)
//alert(document.frm1.lstAnnees.value)

var jours = document.frm1.lstJour.value
var mois = document.frm1.lstMois.value
var annee = document.frm1.lstAnnees.value

//alert(jours+"-"+mois+"-"+annee)

//mise a jour du champ texte affichant la date
document.getElementById('txtDate').value = annee+"-"+mois+"-"+jours

}

//------------------------------------------------p_notice
//function pour placer le message dans la bonne division
function p_notice(message){
	//alert(message)
	noticeDiv = document.getElementById('lienEdition')
	noticeDiv.innerHTML = message;

}


