function valider(strLangue,intForm)
{
//--------------------------------------------------------------------
//Les variables utilisées:  -----------------------------------------

switch( strLangue.toLowerCase() )
	{
	case "fr" :
			var msgHeader = "Votre formulaire est incomplet :\t\t\n       Entrez :\n\n"
			var msgFooter = "\n\nVeuillez faire les corrections qui s'imposent.\t\t"	
			strAnnee = " - Année"
			strMois = " - Mois"
			strJour = " - Jour"
			strFormat = " - AAAA-MM-JJ"
	break;
	case "an" :
			var msgHeader = "Your form is not complete :\t\t\n       Please enter :\n\n"
			var msgFooter = "\n\nPlease make the corrections which are essential.  \t\t"
			strAnnee = " - Year"
			strMois = " - Month"
			strJour = " - Day"
			strFormat = " - YYYY-MM-DD"
	break;
	case "es" :
			var msgHeader = "Su forma no es completa :\t\t\n       Entra :\n\n"
			var msgFooter = "\n\nHaga por favor las correcciones que son esenciales.\t\t"	
			strAnnee = " - Año"
			strMois = " - Mes"
			strJour = " - Día"
			strFormat = " - AAAA-MM-DD"
	break;
	}


var space = "\t- ";
var blnFocus = true;
var msg = "";
//--------------------------------------------------------------------

if (intForm==null)
	intForm=0
	
	
with (document.forms[intForm])
	{
	for(i=0;i<elements.length;i++)
		{
		if(elements[i].title != "" )
			{
			switch(elements[i].type)
				{
				case "radio":
				case "checkbox":
					var control = eval("document.forms[intForm]." + elements[i].name)
					var crochet = false;
					
					if(control.length > 1 )
						{
						for(j=0;j<control.length;j++)
							{
							if (control[j].checked)
								{
								crochet = true;
								j = control.length
								}
							}
							
						if (!crochet)
							{
							msg += space + elements[i].title + "\n"
							i = i + control.length
							}
						}
				break;
				
				case "text":
					strName = elements[i].name.toLowerCase()
					if(strName.search("email")!= -1 || strName.search("courriel")!= -1 || strName.search("couriel")!= -1 )
						{
						var posA = elements[i].value.indexOf("@",1)
						var posPoint = elements[i].value.indexOf(".",posA + 2)

						if ( posA == -1 || posPoint >= elements[i].value.length-1 || posPoint == -1)
							{
							msg += space + elements[i].title + "\n"
							if (blnFocus){elements[i].focus();blnFocus=false;}
							}
						}
					else
						if(elements[i].value == "")
							{
							msg += space + elements[i].title + "\n"
							if (blnFocus){elements[i].focus();blnFocus=false;}
							}
						else if ( (elements[i].name.search("dte") != -1 || elements[i].className=="date") && validDate(elements[i].value)) 
							{
							msg += space + elements[i].title + validDate(elements[i].value) + "\n"
							if (blnFocus){elements[i].focus();blnFocus=false;}
							}
				break;
				
				case "textarea":
					if(elements[i].value == "")
						{
						msg += space + elements[i].title + "\n"
						if (blnFocus){elements[i].focus();blnFocus=false;}
						}
								
				break;
				
				case "password":
					if(elements[i+1].type=="password")
						{
						strName = elements[i+1].name.toLowerCase()
						if(strName.search("pwd")!= -1 || strName.search("passe")!= -1 || strName.search("password")!= -1)
							{
							if(elements[i].value == "" || elements[i].value != elements[i+1].value)
								{
								msg += space + elements[i].title + "\n"
								if (blnFocus){elements[i].focus();blnFocus=false;}
								}
							i++;
							}
						}
					else if (elements[i].value == "")
							{
							msg += space + elements[i].title + "\n"
							if (blnFocus){elements[i].focus();blnFocus=false;}
							}
				break;
				
				case "select-one":
					if(elements[i].selectedIndex == -1)
						msg += space + elements[i].title + "\n"
					else if(elements[i].options[elements[i].selectedIndex].value == "")
						msg += space + elements[i].title + "\n"
				break;
				
				case "file":
					if(elements[i].value == "")
						msg += space + elements[i].title + "\n"
				break;
				}
			}
		}	
	}
if ( msg.length > 0 )
	{
	alert(msgHeader + msg + msgFooter) 
	return false
	}
return true;
}// FIN valider()  ///////////////////////////////////////////////////////////////////////



function validDate(strDateValue)
{
var strRetour = false
strDateValue = strDateValue.replace("/","-")
strDateValue = strDateValue.replace("\\","-")
var arrDate = strDateValue.split("-");			
		
if (arrDate.length != 3)
	strRetour = strFormat;
else if (arrDate[0].length != 4 || isNaN(arrDate[0]))
	strRetour = strAnnee;
else if (parseFloat(arrDate[1]) > 12 || parseFloat(arrDate[1]) < 1)
	strRetour = strMois;
else if (parseFloat(arrDate[2]) > 31 || parseFloat(arrDate[2]) < 1 || arrDate[2]=="")
	strRetour = strJour;
			
return strRetour;		
}// Fin validDate()  ////////////////////////////////////////////////////////////////////////////////////



function numeric(event) 
{
//   Cette fonction s'assure qu'un txtBox ne contienne
//   que des nombres à décimale.
//   Pour l'utiliser il suffit d'inscrire dans le textBox:
//   onkeypress="return numeric(event)"


if(document.all)
	asc=event.keyCode
else
	asc=event.which
		
if(asc<48 || asc>58)
	if(asc!=44 && asc!=46 && asc != 8 && asc != 0 && asc!=13)
		return false
}// FIN de numeric()  /////////////////////////////////////////

function telephone(event) 
{
//   Cette fonction s'assure qu'un txtBox ne contienne
//   qu'un no de tél.
//   Pour l'utiliser il suffit d'inscrire dans le textBox:
//   onkeypress="return telephone(event)"

if(document.all)
	asc=event.keyCode
else
	asc=event.which
		
if(asc<48 || asc>58)
	if(asc!=40 && asc!=41 && asc!=45 & asc!=32 && asc != 8 && asc != 0 && asc!=13)
		return false
}// FIN de numeric()  /////////////////////////////////////////


function integer(event)
{
//   Cette fonction s'assure qu'un textBox ne contienne
//   que des nombres entiers.
//   Pour l'utiliser il suffit d'inscrire dans le textBox:
//   onkeypress="return integer(event)"

if(document.all)
	asc=event.keyCode
else
	asc=event.which

if(asc<48 || asc>58)
	if(asc != 8 && asc != 0 && asc!=13 )
		return false
}//FIN de integer()  //////////////////////////////////////////


function trim(str)
{
var i = 0
while(str.charAt(i++)==" ");
j=str.length;
while(str.charAt(--j)==" ");
str=str.slice(--i,++j);
return str;
}//FIN de trim()  ////////////////////////////////////////////

