//*****************Fonctions vérificaitons formulaires
function champVideAccepte(){
	return "OK";
	}

function verifierLongueurChamp(nomChampPourMessageErreur,elementForm,minCars,maxCars)
{	
	//longueur obligatoire
	if (minCars == maxCars && minCars !=0 && maxCars !=0){
		if (document.forms[0].elements[elementForm].value.length == minCars){
			return "OK";
		}
		else{
			return "Le champ '" + nomChampPourMessageErreur + "' doit avoir une longueur de " + minCars + " caractères";
		}
	}
	//Ne peut être vide
	if (minCars == maxCars && minCars == 0 && maxCars == 0){
		if (document.forms[0].elements[elementForm].value.length != 0){
			return "OK";
		}
		else{
			return "Le champ '" + nomChampPourMessageErreur + "' ne peut être vide ";
		}
	}
	//longueur entre x et y caracteres
	if (minCars >= 1 && maxCars >=2 && minCars != maxCars){
		if (document.forms[0].elements[elementForm].value.length >= minCars && document.forms[0].elements[elementForm].value.length <= maxCars){
			return "OK";
		}
		else{
			return("Le champ '" + nomChampPourMessageErreur + "' doit avoir une longueur entre " + minCars + " et " + maxCars + " caractères" )
		}
	}
	//longueur minimale
	if (minCars != 0 && maxCars == 0){
		if (document.forms[0].elements[elementForm].value.length >= minCars){
			return "OK";
		}
		else{
			return("Le champ '" + nomChampPourMessageErreur + "' doit avoir au moins " + minCars + " caractère(s)" )
		}
	}
	//longueur maximale
	if (minCars == 0 && maxCars >=1){
		if (document.forms[0].elements[elementForm].value.length <= maxCars){
			return "OK";
		}
		else{
			return("Le champ '" + nomChampPourMessageErreur + "' doit avoir une longueur maximale de " + maxCars + " caractère(s)" )
		}
	}
}

function validerCourriel(nomChampPourMessageErreur,elementForm) 
	{
	courriel = document.forms[0].elements[elementForm].value;
	valide = "Champ '" + nomChampPourMessageErreur + "' invalide : Veuillez entrer un courriel de type aaa@aa.aa";
	re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/
	if (re.test(courriel))
		{
		valide = "OK";
		}
	return valide;
}

function validerCourrielSiNonVide(nomChampPourMessageErreur,elementForm) 
	{
	courriel = document.forms[0].elements[elementForm].value;
	if (courriel != ""){
		valide = "Champ '" + nomChampPourMessageErreur + "' invalide : Veuillez entrer un courriel de type aaa@aa.aa";
		re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/
		if (re.test(courriel))
			{
			valide = "OK";
			}
		return valide;
	}
	else{
		return "OK";
	}
}

function validerTelephone(nomChampPourMessageErreur,elementForm){
	numero = document.forms[0].elements[elementForm].value;
	valide = "Champ '" + nomChampPourMessageErreur + "' invalide : Veuillez entrer un numéro de type 000-000-0000";
	re = /^\d{3}\-\d{3}\-\d{4}$/
	if (re.test(numero))
		{
		valide = "OK";
		}
	return valide;
}

function verifierSiNumero(nomChampPourMessageErreur,elementForm){
	if(isNaN(document.forms[0].elements[elementForm].value) == false){
		return "OK";
	}
	else{
		return ("Le champ '" + nomChampPourMessageErreur + "' doit être un numéro.")
	}
}

function verifierSiNumeroLongueurChamp(nomChampPourMessageErreur,elementForm,minCars,maxCars)
{	
	//longueur obligatoire
	if (minCars == maxCars){
		if (document.forms[0].elements[elementForm].value.length == minCars && isNaN(document.forms[0].elements[elementForm].value.length) == false){
			return "OK";
		}
		else{
			return "Le champ '" + nomChampPourMessageErreur + "' doit être une valeur numérique d'une longueur de " + minCars + " caractères";
		}
	}
	//longueur entre x et y caracteres
	if (minCars >= 1 && maxCars >=2 && minCars != maxCars){
		if (document.forms[0].elements[elementForm].value.length >= minCars && document.forms[0].elements[elementForm].value.length <= maxCars && isNaN(document.forms[0].elements[elementForm].value) == false){
			return "OK";
		}
		else{
			return("Le champ '" + nomChampPourMessageErreur + "' doit être une valeur numérique ayant une longueur entre " + minCars + " et " + maxCars + " caractères." )
		}
	}
	//longueur minimale
	if (minCars != 0 && maxCars == 0){
		if (document.forms[0].elements[elementForm].value.length >= minCars && isNaN(document.forms[0].elements[elementForm].value) == false){
			return "OK";
		}
		else{
			return("Le champ '" + nomChampPourMessageErreur + "' doit être une valeur numérique ayant une longueur minimale de " + minCars + " caractères." )
		}
	}
	//longueur maximale
	if (minCars == 0 && maxCars >=1){
		if (document.forms[0].elements[elementForm].value.length <= maxCars && isNaN(document.forms[0].elements[elementForm].value) == false){
			return "OK";
		}
		else{
			return("Le champ '" + nomChampPourMessageErreur + "' doit être une valeur numérique ayant une longueur maximale de " + maxCars + " caractères." )
		}
	}
}

function verifierSiChoixListe(nomChampPourMessageErreur,elementForm){
	if (document.forms[0].elements[elementForm].value != "null"){
		return "OK";
	}
	else{
		return "Veuiller faire un choix dans la liste déroulante '" + nomChampPourMessageErreur + "'";
	}
}

function verifierCodePostal(nomChampPourMessageErreur,elementForm){
	valide = "Mauvais code postal pour le champ '" + nomChampPourMessageErreur + "', le code postal doit être de type a1a a1a";
	re = /^[A-Za-z]\d[A-Za-z]\s*\d[A-Za-z]\d$/
	if (re.test(document.forms[0].elements[elementForm].value)){
		valide = "OK";
	}
	return valide;	
}

function verifierSiCaseCochee(nombreCases, nombreCaseACoche){
	totalCaseCochees = 0
	for (i=1;i<=nombreCases;i++){
		if (document.forms[0].elements['case' + i].checked == true){
			totalCaseCochees ++;
		}
	}
	if (totalCaseCochees < nombreCaseACoche){
		return "Vous devez sélectionner au moins " + nombreCaseACoche + " case(s) à cocher";
	}
	else{
		return "OK";
	}
}

function verifierSiCaseCocheeV2 (nomMessage,nomCases,nbreCasesAVerifier,nombreCaseACoche,nomChampCache){
	var chaineTotale = "";
	totalCaseCochees = 0
	for (i=1;i<=nbreCasesAVerifier;i++){
		if (document.forms[0].elements[nomCases+i].checked == true){
			chaineTotale += i + "-";
			totalCaseCochees ++;
		}
	}
	if (totalCaseCochees < nombreCaseACoche){
		return "Vous devez sélectionner au moins " + nombreCaseACoche + " case(s) à cocher";
	}
	else{
		document.forms[0].elements[nomChampCache].value = chaineTotale.substring('0',chaineTotale.length - 1);
		return "OK";
	}
}

function verifierSiExtensionOK(elementForm){
	var valeur = document.forms[0].elements[elementForm].value;
	valeur= valeur.toLowerCase();
	document.forms[0].elements[elementForm].value = valeur;
	if(valeur == 0){
		return ("Veuillez choisir un fichier .gif ou .jpg");
	}
	if(valeur.indexOf(".jpg") != -1 || valeur.indexOf(".gif") != -1 || valeur.indexOf(".jpeg") != -1){
		return "OK";
	}
	else{
		return ("Mauvais type de fichier pour l'image. .jpg et .gif acceptés seulement.");
	}
}

function verifierSiExtensionOKSiChampNonVide(elementForm){
	var valeur = document.forms[0].elements[elementForm].value;
	valeur= valeur.toLowerCase();
	document.forms[0].elements[elementForm].value = valeur;
	if(valeur != 0){
		if(valeur.indexOf(".jpg") != -1 || valeur.indexOf(".gif") != -1 || valeur.indexOf(".jpeg") != -1){
			return "OK";
		}
		else{
			return ("Mauvais type de fichier pour l'image. .jpg et .gif acceptés seulement.");
		}
	}
	else return "OK";
}

function changerVirgulePourPoint(elementForm){
	var valeur = document.forms[0].elements[elementForm].value;
	var position = valeur.indexOf(",");
	if (position != -1){
		if (position == 0){
			var nouvelleValeur = "."  + valeur.substring(1,valeur.length);
			document.forms[0].elements[elementForm].value  = nouvelleValeur;
		}
		else if (position > 0){
			var nouvelleValeur = valeur.substring(0,position) + "."  + valeur.substring(position + 1,valeur.length);
			document.forms[0].elements[elementForm].value  = nouvelleValeur;
		}
	}
}
//-------------MESSAGE ALERTE APRES VERIFICATION
function decompositonMessageErreur(arg){
	MessageErreurHtml = "";
	tableauErreurs = arg.split(";");
	for (i=0;i<tableauErreurs.length - 1;i++){
		if (tableauErreurs[i] != "OK"){;
			if (MessageErreurHtml.length == ""){
			MessageErreurHtml = "Erreur(s) contenues dans le formulaire...\n\n-" + tableauErreurs[i] + "\n\n";
			}
			else{
			MessageErreurHtml = MessageErreurHtml + "-" + tableauErreurs[i] + "\n\n";
			}
		}
	}
	return MessageErreurHtml;
}

//*****************Fonctions modifications formulaires
function selectAll(arg){
	if (document.forms[0].elements['selectall'].checked == "1"){
		for (i=1;i<=arg;i++){
			document.forms[0].elements['case' + i].checked = true;
			if (navigator.appName.indexOf("Netscape") == -1){
				changeTrColor(i);
			}
		}
	}
	else if (document.forms[0].elements['selectall'].checked == "0"){
		for (i=1;i<=arg;i++){
			document.forms[0].elements['case' + i].checked = false;
			if (navigator.appName.indexOf("Netscape") == -1){
				changeTrColor(i);
			}
		}
	}
}

function changeTrColor(arg) {
	if (navigator.appName.indexOf("Netscape") == -1){
		if (document.forms[0].elements['case' + arg].checked){
       		 	window.document.all['id' + arg].style.background = '#F6F6F6';
		}
		else{	
        		window.document.all['id' + arg].style.background = '#FFFFFF';
		}
	}
}

function changeTrColorRoll(arg,state) {
	if (navigator.appName.indexOf("Netscape") == -1){
		if (state == "over"){
			if (document.forms[0].elements['case' + arg].checked){
       		 	window.document.all['id' + arg].style.background = '#BFBFBF';
			}
			else{
				window.document.all['id' + arg].style.background = '#F6F6F6';
			}
		}
		if (state == "out"){
				if (document.forms[0].elements['case' + arg].checked){
        			window.document.all['id' + arg].style.background = '#E1E1E1';
				}
				else{
					window.document.all['id' + arg].style.background = '#ffffff';
				}
		}
	}
}

function submitFormAvecCaseCochees(arg){
	chaineTemp = ""
	for (i=1;i<=arg;i++){
			if (document.forms[0].elements['case' + i].checked == "1"){	
					chaineTemp += document.forms[0].elements['case' + i].value + ";";
			}
	}
	chaineTemp = chaineTemp.substring(0,chaineTemp.length - 1);
	document.forms[0].elements['champCacheContenantArray'].value = String(chaineTemp);
	document.forms[0].submit();
}

function decomposerDate(arg){
	if(arg == "0000-00-00"){
		return "";
	}	
	else{
		tableauDateComplete = arg.split("-");
		tableauMois = new Array('','janvier','février','mars','avril','mai','juin','juillet','août','septembre','octobre','novembre','décembre');
		//enleve le '0' au jour
		if (tableauDateComplete[2].charAt(0) == "0"){
			if (tableauDateComplete[2] == "01"){
				tableauDateComplete[2] = tableauDateComplete[2].charAt(1) + "<sup>er</sup>";
			}
			else{
				tableauDateComplete[2] = tableauDateComplete[2].charAt(1);
			}
		}
		//enleve le '0' au mois
		if (tableauDateComplete[1].charAt(0) == "0"){
			tableauDateComplete[1] = tableauDateComplete[1].charAt(1);
		}
		return tableauDateComplete[2] + " " + tableauMois[tableauDateComplete[1]] + " " + tableauDateComplete[0];
	}
}

function obtenirDate(){
	var date = new Date();
	chaineTotale = "";
	mois = date.getMonth();
	mois++;
	
	if (mois < 10) 
	{
	mois = "0" + String(mois);
	}
	
	jour = date.getDate();
	if (jour < 10) 
	{
		jour = "0" + String(jour);
	}
	chaineTotale += date.getYear() + "-" + mois + "-" + jour;
	return chaineTotale;
}
function garderPartieTexte(chaine,combienCaracteres){
	if (chaine.length > combienCaracteres){
		return chaine.substring(0,combienCaracteres) + " ...";
	}
	else{
		return chaine;
	}
}

function popup(url,name,settings){
	pop = window.open(url,name,settings);
	pop.focus();
}

function rollOver(image,source){
	document.images[image].src = source;
}

function changerUrlList(url,id){
	alert (id);
	window.location = url + id;
}

function changerUrlListV2(targ,selObj,restore,page){ //v3.0
  window.location = page + selObj.options[selObj.selectedIndex].value;
}