
/* Simple Validation Script 
 * By: AndrŽ Houde <info@scah.ca>
 * Fonctions globales au site Internet
 * http://www.scah.ca
 */

	var zChar = new Array(' ', '(', ')', '-', '.');
	var maxphonelength = 13;
	var phonevalue1;
	var phonevalue2;
	var cursorposition;

function ParseForNumber1(object){
	phonevalue1 = ParseChar(object.value, zChar);
}
function ParseForNumber2(object){
	phonevalue2 = ParseChar(object.value, zChar);
}

function backspacerUP(object,e) {
	if(e){
	e = e
	} else {
	e = window.event
	}
	if(e.which){
	var keycode = e.which
	} else {
	var keycode = e.keyCode
	}

	ParseForNumber1(object)

	if(keycode > 48){
	ValidatePhone(object)
	}
}

function backspacerDOWN(object,e) {
	if(e){
	e = e
	} else {
	e = window.event
	}
	if(e.which){
	var keycode = e.which
	} else {
	var keycode = e.keyCode
	}
	ParseForNumber2(object)
}

function GetCursorPosition(){

	var t1 = phonevalue1;
	var t2 = phonevalue2;
	var bool = false
	for (i=0; i<t1.length; i++)
	{
	if (t1.substring(i,1) != t2.substring(i,1)) {
	if(!bool) {
	cursorposition=i
	bool=true
	}
	}
	}
}

function ValidatePhone(object){

	var p = phonevalue1

	p = p.replace(/[^\d]*/gi,"")

	if (p.length < 3) {
	object.value=p
	} else if(p.length==3){
	pp=p;
	d4=p.indexOf('(')
	d5=p.indexOf(')')
	if(d4==-1){
	pp="("+pp;
	}
	if(d5==-1){
	pp=pp+")";
	}
	object.value = pp;
	} else if(p.length>3 && p.length < 7){
	p ="(" + p;
	l30=p.length;
	p30=p.substring(0,4);
	p30=p30+")"

	p31=p.substring(4,l30);
	pp=p30+p31;

	object.value = pp;

	} else if(p.length >= 7){
	p ="(" + p;
	l30=p.length;
	p30=p.substring(0,4);
	p30=p30+")"

	p31=p.substring(4,l30);
	pp=p30+p31;

	l40 = pp.length;
	p40 = pp.substring(0,8);
	p40 = p40 + "-"

	p41 = pp.substring(8,l40);
	ppp = p40 + p41;

	object.value = ppp.substring(0, maxphonelength);
	}

	GetCursorPosition()

	if(cursorposition >= 0){
	if (cursorposition == 0) {
	cursorposition = 2
	} else if (cursorposition <= 2) {
	cursorposition = cursorposition + 1
	} else if (cursorposition <= 5) {
	cursorposition = cursorposition + 2
	} else if (cursorposition == 6) {
	cursorposition = cursorposition + 2
	} else if (cursorposition == 7) {
	cursorposition = cursorposition + 4
	e1=object.value.indexOf(')')
	e2=object.value.indexOf('-')
	if (e1>-1 && e2>-1){
	if (e2-e1 == 4) {
	cursorposition = cursorposition - 1
	}
	}
	} else if (cursorposition < 11) {
	cursorposition = cursorposition + 3
	} else if (cursorposition == 11) {
	cursorposition = cursorposition + 1
	} else if (cursorposition >= 12) {
	cursorposition = cursorposition
	}

	var txtRange = object.createTextRange();
	txtRange.moveStart( "character", cursorposition);
	txtRange.moveEnd( "character", cursorposition - object.value.length);
	txtRange.select();
	}

}

function ParseChar(sStr, sChar)
{
	if (sChar.length == null)
	{
	zChar = new Array(sChar);
	}
	else zChar = sChar;

	for (i=0; i<zChar.length; i++)
	{
	sNewStr = "";

	var iStart = 0;
	var iEnd = sStr.indexOf(sChar[i]);

	while (iEnd != -1)
	{
	sNewStr += sStr.substring(iStart, iEnd);
	iStart = iEnd + 1;
	iEnd = sStr.indexOf(sChar[i], iStart);
	}
	sNewStr += sStr.substring(sStr.lastIndexOf(sChar[i]) + 1, sStr.length);

	sStr = sNewStr;
	}

	return sNewStr;
}
















//  Validation du courriel
//  -----------------------------------------

function isEmail(opt)
	{
	if (opt == "" || opt.length < 6)					//' Verifier si le champ n'est pas vide
		return false

	temp = /\s+/g;										//' VŽrifier les caracteres illegaux
	if (temp.test(opt))
		return false;
	

	temp = /^(\w|[^_]\.|[\-])+((\@){1}([^_]))(([a-z]|[\d]|[\-]|\.)+|([^_]\.[^_])*)+\.[a-z]{2,6}$/i;
	if (!temp.test(opt))
		return false;
			
	temp =/\.(a[c-gil-oq-uwz]|b[a-bd-jm-or-tvwyz]|c[acdf-ik-orsuvx-z]|d[ejkmoz]|e[ceghr-u]|f[i-kmorx]|g[abd-ilmnp-uwy]|h[kmnrtu]|i[delm-oq-t]|j[emop]|k[eg-imnprwyz]|l[a-cikr-vy]|m[acdghk-z]|n[ace-giloprtuz]|om|p[ae-hk-nrtwy]|qa|r[eouw]|s[a-eg-ort-vyz]|t[cdf-hjkm-prtvwz]|u[agkmsyz]|v[aceginu]|w[fs]|y[etu]|z[admrw]|com|edu|net|org|mil|gov|biz|pro|aero|coop|info|name|museum)$/i;
	
	if (!temp.test(opt))								//' Valider a partie du champ correspondant au nom de domaine
		return false;
	
	temp = /\.\./										//' Valider les caracteres suivants:  ././ 
	if (temp.test(opt))
		return false;
	
														//'  Valider le caractere @@ 
	temp = /\@\@/
	if(temp.test(opt))
		return false;

	return true;
}



//  Validation si le champ est numŽrique 
//  -----------------------------------------

function isNumeric(sText)
{
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;

   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
   
}






function ouvrir_section(phase_a_ouvrir)
{

	var oDivFiche;

	//fermer la fenetre 
	oDivFiche = document.getElementById('div_a');
	oDivFiche.style.visibility = 'hidden';
	oDivFiche.style.display = "none";

	oDivFiche = document.getElementById('div_b');
	oDivFiche.style.visibility = 'hidden';
	oDivFiche.style.display = "none";

	oDivFiche = document.getElementById('div_c');
	oDivFiche.style.visibility = 'hidden';
	oDivFiche.style.display = "none";


	//vider les champs des sections
	for (var intCpt = 0; intCpt <document.forms[0].section_a.length; intCpt++) 
		{
			document.forms[0].section_a[intCpt].checked = false;
		}

	for (var intCpt = 0; intCpt <document.forms[0].section_b.length; intCpt++) 
		{
			document.forms[0].section_b[intCpt].checked = false;
		}

	for (var intCpt = 0; intCpt <document.forms[0].section_c.length; intCpt++) 
		{
			document.forms[0].section_c[intCpt].checked = false;
		}


	if(document.forms[0].typePropriete[0].checked)
		{
		//ouvrir la fenetre 
		oDivFiche = document.getElementById('div_b');
		oDivFiche.style.visibility = 'visible';
		oDivFiche.style.display = "block";

		//ouvrir la fenetre 
		oDivFiche = document.getElementById('div_c');
		oDivFiche.style.visibility = 'visible';
		oDivFiche.style.display = "block";

		} 


	if(document.forms[0].typePropriete[1].checked)
		{

		//ouvrir la fenetre 
		oDivFiche = document.getElementById('div_a');
		oDivFiche.style.visibility = 'visible';
		oDivFiche.style.display = "block";

		}

	if(document.forms[0].typePropriete[2].checked)
		{

		//ouvrir la fenetre 
		oDivFiche = document.getElementById('div_a');
		oDivFiche.style.visibility = 'visible';
		oDivFiche.style.display = "block";

		}

	return;

}


function ouvrir_mandat(phase_a_ouvrir)
{

	var oDivFiche;

	//fermer la fenetre 
	oDivFiche = document.getElementById('div_d');
	oDivFiche.style.visibility = 'hidden';
	oDivFiche.style.display = "none";

	//vider les champs des sections
	for (var intCpt = 0; intCpt <document.forms[0].section_d.length; intCpt++) 
		{
			document.forms[0].section_d[intCpt].checked = false;
		}

	if(document.forms[0].typeMandat[2].checked)
		{
		//ouvrir la fenetre 
		oDivFiche = document.getElementById('div_d');
		oDivFiche.style.visibility = 'visible';
		oDivFiche.style.display = "block";

		} 

	return;

}




























// FONCTION DE VALIDATION DU FORMULAIRE CONTACT

function valider_contact()
{
	if (document.forms[0].institutionCourriel.value == "")
	{
		document.forms[0].institutionCourriel.focus();
		alert("Le courriel de l'institution financiÃ¨re est obligatoire.");
		return false;
	}else{
		if (!isEmail(document.forms[0].institutionCourriel.value))
		{
			document.forms[0].institutionCourriel.focus();
			alert("Le format du courriel de l'institution financiÃ¨re est invalide.");
			return false;
		}
	}

	if (document.forms[0].institutionTransit.value == "")
	{
		document.forms[0].institutionTransit.focus();
		alert("Le no de transit de l'institution financiÃ¨re est obligatoire.");
		return false;
	}

	if (document.forms[0].demandeurNom.value == "")
	{
		document.forms[0].demandeurNom.focus();
		alert("Le nom du demandeur est obligatoire.");
		return false;
	}

	if (document.forms[0].demandeurPrenom.value == "")
	{
		document.forms[0].demandeurPrenom.focus();
		alert("Le prÃ©nom du demandeur est obligatoire.");
		return false;
	}

	if (!(document.forms[0].institutionCodePostal.value == ""))
	{
		var pattern = /^[A-Z][0-9][A-Z] ?[0-9][A-Z][0-9]$/;
		if (!(pattern.test(document.forms[0].institutionCodePostal.value)))
		{
			document.forms[0].institutionCodePostal.focus();
			alert("Le format du code postal de l'institution financiÃ¨re doit être X9X 9X9.");
			return false;
		}
	}

	if (document.forms[0].institutionTelephone.value !== "" && document.forms[0].institutionTelephone.value.length != 14)
	{
			document.forms[0].institutionTelephone.focus();
			alert("Le format du no de tÃ©lÃ©phone de l'institution financiÃ¨re doit être (999) 999-9999.");
			return false;
	}

	if (document.forms[0].institutionFax.value !== "" && document.forms[0].institutionFax.value.length != 14)
	{
			document.forms[0].institutionFax.focus();
			alert("Le format du no de tÃ©lÃ©copieur de l'institution financiÃ¨re doit être (999) 999-9999.");
			return false;
	}






	if (document.forms[0].emprunteurNom1.value == "")
	{
		document.forms[0].emprunteurNom1.focus();
		alert("Le nom de l'emprunteur est obligatoire.");
		return false;
	}

	if (document.forms[0].emprunteurPrenom1.value == "")
	{
		document.forms[0].emprunteurPrenom1.focus();
		alert("Le prÃ©nom de l'emprunteur est obligatoire.");
		return false;
	}

	if (!(document.forms[0].emprunteurCodePostal.value == ""))
	{
		var pattern = /^[A-Z][0-9][A-Z] ?[0-9][A-Z][0-9]$/;
		if (!(pattern.test(document.forms[0].emprunteurCodePostal.value)))
		{
			document.forms[0].emprunteurCodePostal.focus();
			alert("Le format du code postal de l'emprunteur doit être X9X 9X9.");
			return false;
		}
	}

	if (document.forms[0].emprunteurTelephone1.value !== "" && document.forms[0].emprunteurTelephone1.value.length != 14)
	{
			document.forms[0].emprunteurTelephone1.focus();
			alert("Le format du no de tÃ©lÃ©phone (jour) de l'emprunteur doit être (999) 999-9999.");
			return false;
	}

	if (document.forms[0].emprunteurTelephone2.value !== "" && document.forms[0].emprunteurTelephone2.value.length != 14)
	{
			document.forms[0].emprunteurTelephone2.focus();
			alert("Le format du no de tÃ©lÃ©phone (soir) de l'emprunteur doit être (999) 999-9999.");
			return false;
	}


	if (document.forms[0].proprioTelephone1.value !== "" && document.forms[0].proprioTelephone1.value.length != 14)
	{
			document.forms[0].proprioTelephone1.focus();
			alert("Le format du no de tÃ©lÃ©phone (jour) du propriÃ©taire doit être (999) 999-9999.");
			return false;
	}

	if (document.forms[0].proprioTelephone2.value !== "" && document.forms[0].proprioTelephone2.value.length != 14)
	{
			document.forms[0].proprioTelephone2.focus();
			alert("Le format du no de tÃ©lÃ©phone (soir) du propriÃ©taire doit être (999) 999-9999.");
			return false;
	}


	if (document.forms[0].proprioCell.value !== "" && document.forms[0].proprioCell.value.length != 14)
	{
			document.forms[0].proprioCell.focus();
			alert("Le format du no de cellulaire du propriÃ©taire doit être (999) 999-9999.");
			return false;
	}



	if (document.forms[0].proprieteCivique.value == "")
	{
		document.forms[0].proprieteCivique.focus();
		alert("Le no-civique de la propriÃ©tÃ© est obligatoire.");
		return false;
	}

	if (document.forms[0].proprieteAdresse.value == "")
	{
		document.forms[0].proprieteAdresse.focus();
		alert("Le nom de la rue de la propriÃ©tÃ© est obligatoire.");
		return false;
	}

	if (document.forms[0].proprieteVille.value == "")
	{
		document.forms[0].proprieteVille.focus();
		alert("La ville de la propriÃ©tÃ© est obligatoire.");
		return false;
	}

	if (document.forms[0].proprieteCodePostal.value == "")
	{
		document.forms[0].proprieteCodePostal.focus();
		alert("Le code postal de la propriÃ©tÃ© est obligatoire.");
		return false;

	}else{
		var pattern = /^[A-Z][0-9][A-Z] ?[0-9][A-Z][0-9]$/;
		if (!(pattern.test(document.forms[0].proprieteCodePostal.value)))
		{
			document.forms[0].proprieteCodePostal.focus();
			alert("Le format du code postal de la propriÃ©tÃ© doit être X9X 9X9.");
			return false;
		}
	}


	//valider si au moins un type de propriÃ©tÃ©
	if(document.forms[0].typePropriete[0].checked==false && document.forms[0].typePropriete[1].checked==false &&document.forms[0].typePropriete[2].checked==false && document.forms[0].typePropriete[3].checked==false && document.forms[0].typePropriete[4].checked==false && document.forms[0].typePropriete[5].checked==false)
	{
			alert("Veuillez cocher un type de propriÃ©tÃ©.")
			document.forms[0].typePropriete[0].focus();
			return false; 
	}

	//valider si au moins un type de mandat
	if(document.forms[0].typeMandat[0].checked==false && document.forms[0].typeMandat[1].checked==false &&document.forms[0].typeMandat[2].checked==false)
	{
			alert("Veuillez cocher un type de mandat.")
			document.forms[0].typeMandat[0].focus();
			return false; 
	}




}





