//================================================================================
// Librairie de fonctions communes
//================================================================================
var valDefault;
var valType;
var valRequis;
var valDefaut;

//--------------------------------------------------------------------------------
// Fonction de controle des caractères tapés dans les chaines
function funcCtrlString(varInput)
	{
//	alert(varInput.value);
	}

//--------------------------------------------------------------------------------
// Fonction de controle de validité d'une date
function funcIsDateValid(chaineDate)
	{
	if (chaineDate == "")
		return false;

	var ladate = (chaineDate).split("/");

	var unedate = new Date(eval(ladate[2]),eval(ladate[1])-1,eval(ladate[0]));

	var annee = unedate.getYear();
	if ((Math.abs(annee)+"").length < 4)
		annee = annee + 1900;

	return ((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])));
}


//--------------------------------------------------------------------------------
// Fonction D'extraction des attributs propriétaires des input
function funcExtract(varElement,varTyp)
	{
//alert(varElement.alt + ' - ' + varTyp + ' - ' + varElement.title);
	if (((varElement.alt != '') && (varElement.alt != 'undefined')) || ((varElement.title != '') && (varElement.title != 'undefined')))
		{
//alert(varElement.alt + ' - ' + varElement.id);			
		if (varElement.alt)
			switch (varTyp)
				{
				case 'nom' :
						return varElement.alt.substr(4 , varElement.alt.indexOf('|')-4);
				case 'type' :
					return varElement.alt.substr(varElement.alt.indexOf('|Type:',0)+6 , varElement.alt.indexOf('|Requis:',0)-(varElement.alt.indexOf('|Type:',0)+6));
				case 'requis' :
					return varElement.alt.substr(varElement.alt.indexOf('|Requis:')+8 , 3);
				case 'defaut' :
					return varElement.alt.substr(varElement.alt.indexOf('|Defaut:',0)+8 , varElement.alt.indexOf('|maxLength:',0)-(varElement.alt.indexOf('|Defaut:',0)+8));
				case 'maxLength' :
					return varElement.alt.substr(varElement.alt.indexOf('|maxLength:')+11 , varElement.alt.length-(varElement.alt.indexOf('|maxLength:')+11));

				}
		else
			switch (varTyp)
				{
				case 'nom' :
						return varElement.id.substr(4 , varElement.id.indexOf('|')-4);
				case 'type' :
					return varElement.id.substr(varElement.id.indexOf('|Type:',0)+6 , varElement.id.indexOf('|Requis:',0)-(varElement.id.indexOf('|Type:',0)+6));
				case 'requis' :
					return varElement.id.substr(varElement.id.indexOf('|Requis:')+8 , 3);
				case 'defaut' :
					return varElement.id.substr(varElement.id.indexOf('|Defaut:',0)+8 , varElement.id.indexOf('|maxLength:',0)-(varElement.id.indexOf('|Defaut:',0)+8));
				case 'maxLength' :
					return varElement.id.substr(varElement.id.indexOf('|maxLength:')+11 , varElement.id.length-(varElement.id.indexOf('|maxLength:')+11));
				}

		}
	else
		return '';
	}

//--------------------------------------------------------------------------------
// Fonction d'initialisation d'un formulaire
varInit = false;
function funcFormInit(varForm)
	{
	if (varInit == false)
		{
		//--- Affectation des valeurs par défaut
		for (i = 0; i < varForm.length; i++)
			{
			valDefault = funcExtract(varForm.elements[i],'defaut');
			if ((varForm.elements[i].value == "") && (valDefault != 'undefined'))
				{
				varForm.elements[i].value = valDefault;
				}
			valType = funcExtract(varForm.elements[i],'type');	
 			  if ((valType == "Dat") && (varForm.elements[i].value  == "")) 
				{
				strDate = new Date();
				strDay = strDate.getDate().toString();
				if (strDay.length == 1) {strDay = "0"+ strDay;}
				strMonth = (strDate.getMonth()+1).toString();
				if (strMonth.length == 1) {strMonth = "0"+ strMonth;}
				strYear = strDate.getYear();
				varForm.elements[i].value = strDay +"/"+ strMonth +"/"+ strYear;
				}
			}
		}
	varInit = true;
	}

//--------------------------------------------------------------------------------
// Fonction de contrôle de saisie d'un formulaire
var varPwdCtrl = "";

function funcCtrlSaisie(varForm)
	{
//alert('ok');		
	var StatutValid = 'OK';
	var StatutSelect = 'NON';
	var StrMessage = '';
	var strCheckbox = '';
	var blnCheck;
	//--- Réinitlisation de l'aspect des champs (s'ils ont été précédemment en erreur de saisie)
	for (i = 0; i < varForm.length; i++)
		{
		funcInitField(varForm.elements[i]);
		}
		
	for (i = 0; i < varForm.length; i++)
		{
		blnCheck = false;
		if (varForm.elements[i].alt)
			{
			if (varForm.elements[i].alt.indexOf('|Type:',0) > -1)
				{
				blnCheck = true;
				}
			}
	  	else
			if (varForm.elements[i].type == 'textarea')
				{
				if (varForm.elements[i].title)
					{
//alert('innerHTML = ' + varForm.elements[i].innerHTML + '\ninnerText = ' + varForm.elements[i].innerText);
					if (varForm.elements[i].id.indexOf('|Type:',0) > -1)
						{
						blnCheck = true;
						}
					}
				}
				

//alert(varForm.elements[i].name.toLowerCase());
				
//		if (varForm.elements[i].name)
		if (blnCheck == true)
			{

//alert('Nom : ' + varForm.elements[i].name +' - Requis : ' + funcExtract(varForm.elements[i],'requis') + ' - type : ' + varForm.elements[i].type);
			// ----- S'il s'agit d'un login, test pour savoir s'il n'existe pas déjà
			if (varForm.elements[i].name.toLowerCase() == 'rmcontactlogin')
				{
//alert('ok - ' + varForm.elements[i].value);					
				if (varForm.elements[i].value != '')
					{
					if (!funcCtrlLogin(varForm.RmContactId.value, varForm.elements[i].value, '4'))
						{
						StrMessage = StrMessage + "Ce login est déjà utilisé. Choisissez-en un autre.\n";
						funcErrorField(varForm.elements[i]);
						StatutValid = "NON"
						}
					var strCar = "0123456789abcdefghijklmnopqrstuvwxyz_-.@ "
					for (j = 0; j < varForm.elements[i].value.length; j++)
						{
						if (strCar.toLowerCase().indexOf(varForm.elements[i].value.charAt(j).toLowerCase()) < 0)
							{
							StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" ne peut contenir que les caractères suivants \"" + strCar + "\"\n"
							funcErrorField(varForm.elements[i]);
							StatutValid = "";
							break
							}
						}
					}
				}
			//------- Fin test login ----------------------------------------------------


			//------- Contrôle des Champs Email si resaisi du compte = première saisie -----------------------------------------------------------------------------
			if (varForm.elements[i].name.toLowerCase() == 'rmcontactemail')
				{
				if (varForm.elements[i].value != '')
					{
					if (varForm.elements[i+1])
						{
						if (varForm.elements[i+1].name == varForm.elements[i].name + '_ctl')
							{
							if (varForm.elements[i].value != varForm.elements[i+1].value)
								{
								StrMessage = StrMessage + "La 2ème adresse Email saisie pour confirmation est différente.\n Veuillez recommencer.";
								varForm.elements[i].value = "";
								varForm.elements[i+1].value = "";					
								varPwdCtrl = "";
								StatutValid = "NON";
								break
								}
							//---- Email existant ? -------------------------------------------------
							if (!funcCtrlEmail(varForm.RmContactId.value, varForm.elements[i].value))
								{
								StrMessage = StrMessage + "\nCette adresse e-mail est déjà utilisée.\n";
								funcErrorField(varForm.elements[i]);
								varPwdCtrl = "";								
								StatutValid = "NON"
								}
							}
						}

					}
				}
			//--------- Fin contrôle des champs Email -----------------------------------------------------------------------





			//--------- Controle des champs obligatoires --------------------------------------------------------------------
			if (funcExtract(varForm.elements[i],'requis') == 'Oui')
				{
				switch (varForm.elements[i].type)
					{
					case 'checkbox' :
//						strCheckbox = '';
						if (strCheckbox != funcExtract(varForm.elements[i],'nom'))
							{
							strCheckbox = funcExtract(varForm.elements[i],'nom');
							statutSelect = "NON";
							for (var j=i;j<varForm.elements.length;j++)
								{
								if (strCheckbox == funcExtract(varForm.elements[j],'nom'))
									{
									if (varForm.elements[j].checked)
										statutSelect = 'OK';		
									}
								else
									{
									break;
									}
								}
							if (statutSelect != 'OK')
								{
								StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" est obligatoire. \n"
//alert('div_' + varForm.elements[i].name);
								funcErrorField(document.getElementById('div_' + varForm.elements[i].name));
								StatutValid = "NON"
								}	
							}
						break;	
					case 'select-one' :
						statutSelect = "NON";
						for (var j=0;j<varForm.elements[i].options.length;j++)
							{
							if (varForm.elements[i].options[j].selected)
								statutSelect = 'OK';
							}
						if (statutSelect != 'OK')
							{
							StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" est obligatoire \n"
							funcErrorField(varForm.elements[i]);
							StatutValid = "NON"
							}
						break;					
					case 'text' :
//alert('textarea : ' + varForm.elements[i].value.length + ' - ' + funcExtract(varForm.elements[i],'maxLength'));					
						if ((varForm.elements[i].value.length < 1) || (varForm.elements[i].value == "VIDE"))
							{
//				StrMessage = StrMessage + "Le champ \"" + varForm.elements[i].vallib + "\" est obligatoire \n"
							StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" est obligatoire \n"
							funcErrorField(varForm.elements[i]);
							StatutValid = "NON"
							}
						else
							if ((varForm.elements[i].value.length > funcExtract(varForm.elements[i],'maxLength')) && (funcExtract(varForm.elements[i],'type').toLowerCase() != 'num') && (funcExtract(varForm.elements[i],'maxLength') != ''))
								{
								StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" est trop long (" + varForm.elements[i].value.length + " caractères).\nIl ne doit pas dépasser " + funcExtract(varForm.elements[i],'maxLength') + " caractères.\n"
								funcErrorField(varForm.elements[i]);
								StatutValid = "NON"
								}
								
						if (funcExtract(varForm.elements[i],'type') == "Mail")
							var strCar = new Array('http://');
						else if (funcExtract(varForm.elements[i],'type') == "Web")
							var strCar = new Array('http://');
						else
							var strCar = new Array('www', 'http://');

						for (j = 0; j < strCar.length; j++)
								{
								if (varForm.elements[i].value.toLowerCase().indexOf(strCar[j]) > -1)
									{
									StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" ne peut contenir pas contenir les caractères suivants \"" + strCar[j] + "\"\n"
									funcErrorField(varForm.elements[i]);
									StatutValid = "NON";
									break
									}
								}
						break
					case 'textarea' : 
//alert(varForm.elements[i].name + ' - ' + varForm.elements[i].type);					
//alert(varForm.elements[i].id + '\n' + varForm.elements[i].value + '\n' + varForm.elements[i].value.length);
						if ((varForm.elements[i].value.length < 1) || (varForm.elements[i].value == "VIDE"))
							{
							StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" est obligatoire \n"
							funcErrorField(document.getElementById('div_' + varForm.elements[i].name));
//							funcErrorField(varForm.elements[i]);
							StatutValid = "NON"
							}
						else
							{
//							alert('1 : ' + varForm.elements[i].innerHTML + "\n\n" + '2 : ' + varForm.elements[i].value + '\n\n' + funcExtract(varForm.elements[i],'maxLength'));
							if ((varForm.elements[i].value.length > funcExtract(varForm.elements[i],'maxLength'))  && (funcExtract(varForm.elements[i],'maxLength') != ''))
								{
								StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" est trop long (" + varForm.elements[i].value.length + " caractères).\nIl ne doit pas dépasser " + funcExtract(varForm.elements[i],'maxLength') + " caractères.\n"
								funcErrorField(document.getElementById('div_' + varForm.elements[i].name));							
//								funcErrorField(varForm.elements[i]);
								StatutValid = "NON"
								}
							}
						if (funcExtract(varForm.elements[i],'type') == "Mail")
							var strCar = new Array('http://');
						else if (funcExtract(varForm.elements[i],'type') == "Web")
							var strCar = new Array('@', 'http://');
						else
							var strCar = new Array('@', 'www', 'http://');
						for (j = 0; j < strCar.length; j++)
							{
							if (varForm.elements[i].value.toLowerCase().indexOf(strCar[j]) > -1)
								{
								StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" ne peut contenir pas contenir les caractères suivants \"" + strCar[j] + "\"\n"
								funcErrorField(document.getElementById('div_' + varForm.elements[i].name));								
//								funcErrorField(varForm.elements[i]);
								StatutValid = "NON";
								break
								}
							}
						break			
					case 'password' :
						if ((varForm.elements[i].value.length < 1) || (varForm.elements[i].value == "VIDE"))
							{
//				StrMessage = StrMessage + "Le champ \"" + varForm.elements[i].vallib + "\" est obligatoire \n"
							StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" est obligatoire \n"
							funcErrorField(varForm.elements[i]);
							StatutValid = "NON"
							}
						break	
						
					}
				}
		
			//--- Contrôle des champs Upload Image
			if (funcExtract(varForm.elements[i],'type') == "Img" && varForm.elements[i].value.length > 0)
				{
				var strCar = ".GIF, .JPG, .JPEG, .PNG"
				var strExt = varForm.elements[i].value.substring(varForm.elements[i].value.length-4,varForm.elements[i].value.length).toUpperCase()
				if (strCar.indexOf(strExt) < 0)
					{
					StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" doit être un fichier du type \"" + strCar + "\"\n"
					funcErrorField(varForm.elements[i]);
					StatutValid = "";
					}
				}
		
			//--- Contrôle des champs Entiers
			if (funcExtract(varForm.elements[i],'type') == "Int" && varForm.elements[i].value.length > 0)
				{
				var strCar = "0123456789"
				for (j = 0; j < varForm.elements[i].value.length; j++)
					{
					if (strCar.indexOf(varForm.elements[i].value.charAt(j)) < 0)
						{
						StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" ne peut contenir que les caractères suivants \"" + strCar + "\"\n"
						funcErrorField(varForm.elements[i]);
						StatutValid = "";
						break
						}
					}
				}
				
			//--- Contrôle des champs Real
			if (funcExtract(varForm.elements[i],'type') == "Num" && varForm.elements[i].value.length > 0)
				{
				var strCar = "0123456789";
				var strvirg = ",";
				for (j = 0; j < varForm.elements[i].value.length; j++)
					{
					
							
					if (strCar.indexOf(varForm.elements[i].value.charAt(j)) < 0)
						{
						StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" ne peut contenir que les caractères suivants \"" + strCar + "\"\n"
						funcErrorField(varForm.elements[i]);
						StatutValid = "";
						break
						}
					}
				}
				
			//--- Contrôle des champs Web


			//--- Contrôle des champs E-mail
			if (funcExtract(varForm.elements[i],'type') == "Mail" && varForm.elements[i].value.length > 0)
				{
				if (varForm.elements[i].value.length < 6 || varForm.elements[i].value.indexOf("@") < 0 || varForm.elements[i].value.indexOf(".") < 0)
					{
					StrMessage = StrMessage + "Vous devez saisir une adresse E-mail valide\n"
					funcErrorField(varForm.elements[i]);
					StatutValid = "";
					}
				else
					{
					var strCar = "0123456789abcdefghijklmnopqrstuvwxyz_-.@"
					for (j = 0; j < varForm.elements[i].value.length; j++)
						{
						if (strCar.toLowerCase().indexOf(varForm.elements[i].value.charAt(j).toLowerCase()) < 0)
							{
							StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" ne peut contenir que les caractères suivants \"" + strCar + "\"\n"
							funcErrorField(varForm.elements[i]);
							StatutValid = "";
							break
							}
						}
					}
				}
			//--- Contrôle des champs Date sur 10 ou 19 caractères
			if (funcExtract(varForm.elements[i],'type') == "Dat" && varForm.elements[i].value.length > 0)
				{
				var blnDate = true;
				// Contrôle de la longueur
				if ((varForm.elements[i].value.length != 10) && (varForm.elements[i].value.length != 19) && (varForm.elements[i].value.length != 8))
					{
					StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" doit respecter le format JJ/MM/AAAA HH:MM:SS\n"
					funcErrorField(varForm.elements[i]);
					StatutValid = "";
					blnDate = false;
					}
				if ((blnDate) && (varForm.elements[i].value.length == 8) && ((varForm.elements[i].value.charAt(2) != ":") || (varForm.elements[i].value.charAt(5) != ":")))
					{
					StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" doit respecter le format HH:MM:SS\n"
					funcErrorField(varForm.elements[i]);
					StatutValid = "";
					blnDate = false;
					}

				if ((blnDate) && (varForm.elements[i].value.length == 10) && ((varForm.elements[i].value.charAt(2) != "/") || (varForm.elements[i].value.charAt(5) != "/")))
					{
					StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" doit respecter le format JJ/MM/AAAA\n"
					funcErrorField(varForm.elements[i]);
					StatutValid = "";
					blnDate = false;
					}

				if ((blnDate) && (varForm.elements[i].value.length == 19) && ((varForm.elements[i].value.charAt(2) != "/") || (varForm.elements[i].value.charAt(5) != "/") || (varForm.elements[i].value.charAt(13) != ":") || (varForm.elements[i].value.charAt(16) != ":") ))
					{
					StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" doit respecter le format JJ/MM/AAA HH:MM:SS\n"
					funcErrorField(varForm.elements[i]);
					StatutValid = "";
					blnDate = false;
					}


/*				if (((varForm.elements[i].value.length != 10) && (varForm.elements[i].value.length != 19)) || (varForm.elements[i].value.charAt(2) != "/") || (varForm.elements[i].value.charAt(5) != "/"))
					{
					StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" doit respecter le format JJ/MM/AAAA HH:MM:SS\n"
					funcErrorField(varForm.elements[i]);
					StatutValid = "";
					}*/

				// Contrôle des caractères valide				
				var strCar = "0123456789/ :";
				for (j = 0; j < varForm.elements[i].value.length; j++)
					{
					if (strCar.indexOf(varForm.elements[i].value.charAt(j)) < 0)
						{
						StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" ne peut contenir que les caractères suivants \"" + strCar + "\"\n"
						funcErrorField(varForm.elements[i]);
						StatutValid = "";
						break
						}
					}
				
				// Contrôle de la validité de la date
				if ((blnDate)&& (varForm.elements[i].value.indexOf("/") > -1))
					if (!funcIsDateValid(varForm.elements[i].value.substr(0, 10)))
						{
						StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" n'est pas une date valide\n"
						funcErrorField(varForm.elements[i]);
						StatutValid = "";
						blnDate = false;
						}
				// Contrôle de la validité du time
				if ((blnDate) && (varForm.elements[i].value.length == 19) && ((eval(varForm.elements[i].value.substr(11, 2)) > 23) || (eval(varForm.elements[i].value.substr(14, 2)) > 59) || (eval(varForm.elements[i].value.substr(17, 2)) > 59)))
					{
					StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" n'est pas une date valide\n"
					funcErrorField(varForm.elements[i]);
					StatutValid = "";
					blnDate = false;
					}

				if ((blnDate) && (varForm.elements[i].value.length == 8) && ((eval(varForm.elements[i].value.substr(0, 2)) > 23) || (eval(varForm.elements[i].value.substr(3, 2)) > 59) || (eval(varForm.elements[i].value.substr(6, 2)) > 59)))
					{
					StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" n'est pas une date valide\n"
					funcErrorField(varForm.elements[i]);
					StatutValid = "";
					}
				}
				
			//--- Contrôle des champs Password
			if (funcExtract(varForm.elements[i],'type') == "Pwd" && varForm.elements[i].value.length > 0)
				{
				var strCar = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMOPQRSTUVWXYZ?!-_*$£"
				for (j = 0; j < varForm.elements[i].value.length; j++)
					{
					if (strCar.toLowerCase().indexOf(varForm.elements[i].value.charAt(j).toLowerCase()) < 0)
						{
						StrMessage = StrMessage + "Le champ \"" + funcExtract(varForm.elements[i],'nom') + "\" ne peut contenir que les caractères suivants \"" + strCar + "\"\n"
						funcErrorField(varForm.elements[i]);
						StatutValid = "";
						break
						}
					}
				
				if (varForm.elements[i+1].name == varForm.elements[i].name + '_ctl')
					{
					if (varForm.elements[i].value != varForm.elements[i+1].value)
						{
						StrMessage = "Le 2ème mot de passe saisi pour confirmation est différent.\n Veuillez recommencer.";
						varForm.elements[i].value = "";
						varForm.elements[i+1].value = "";					
						varPwdCtrl = "";
						StatutValid = "";
						break
						}
	
					}
				else
					if (varPwdCtrl == "")
						{
						varPwdCtrl = varForm.elements[i].value;
						varForm.elements[i].value = "";
						StrMessage = "veuillez saisir à nouveau le mot de passe pour confirmation.";
						varForm.elements[i].select();
						StatutValid = "";
						break
						}
					else
						{
						if (varPwdCtrl != varForm.elements[i].value)
							{
							StrMessage = "Le 2ème mot de passe saisi pour confirmation est différent.\n Veuillez recommencer.";
							varForm.elements[i].value = "";
							varPwdCtrl = "";
							StatutValid = "";
							break
							}
						}
					}
			}
		//--- retour du contrôle de saisie
		}
	if (StatutValid != "OK")
		{
		alert(StrMessage);
		return false;
		}
	else
		{
		return true;
		}
	}

//--------------------------------------------------------------------------------
// Fonction de mise en évidence d'un champ en erreur de saisie

function funcErrorField(varField)
	{
	if (varField)
		{
		varField.style.borderColor = "red";
		varField.style.borderWidth = "2px";
		varField.style.borderStyle = "solid";
		if (document.getElementById('Alert' + varField.name) == null)
			{
//		varField.outerHTML = "<img id='Alert"+ varField.name +"' src='../images/_charte/alert.gif' align='top'>"+ varField.outerHTML;
			}
		}
	}

//--------------------------------------------------------------------------------
// Fonction de réinitialisation d'un champ précédemment en erreur de saisie

function funcInitField(varField)
	{
	varField.style.borderColor = "";
	varField.style.borderWidth = "";
//	varField.style.borderStyle = "";
	if (document.getElementById('Alert' + varField.name))
		{
		document.getElementById('Alert' + varField.name).outerHTML = "";
		}
	}


var varPassword2 = "";

function funcCtrlLogin(varId, varLogin, varWebId)
	{
	var StatutValid = "OK";	
	var oXmlHttp = null;
	if(window.XMLHttpRequest) // Firefox
		{
		oXmlHttp = new XMLHttpRequest();
		oXmlHttp.open("POST", "../_inc/XML_funcCtrlLogin.asp?ms="+ new Date().getTime(), false);
		oXmlHttp.onreadystatechange = function()
			{
			if(oXmlHttp.readyState == 4)
			eval(oXmlHttp.responseText);
			}
		oXmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		oXmlHttp.setRequestHeader("Cache-Control","no-cache");
		oXmlHttp.setRequestHeader('Pragma','no-cache');
		var data = "strId=" + varId + "&strLogin="+ varLogin + "&strWebId=" + varWebId;
		oXmlHttp.send(data);
		if (oXmlHttp.responseText != '')
			return false;
		else
			return true;
		}
	else if(window.ActiveXObject) // Internet Explorer
		{
		oXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
		oXmlHttp.open("POST", "../_inc/XML_funcCtrlLogin.asp?ms="+ new Date().getTime() +"&strId=" + varId + "&strLogin="+ varLogin + "&strWebId=" + varWebId, false);		
		oXmlHttp.send();
alert(oXmlHttp.responseText)
		if (oXmlHttp.responseText != '')
			return false;
		else
			return true;
		}
	else
		{ // XMLHttpRequest non supporté par le navigateur
		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
		return;
		}
	}




//**** Controle du login si déjà existant
function funcCtrlLogin3(varId, varLogin)
	{
	return true;
	var StatutValid = "OK";	
	var oXmlHttp = null;
	if(window.XMLHttpRequest) // Firefox
		{
		oXmlHttp = new XMLHttpRequest();
		oXmlHttp.open("POST", "../_inc/funcCtrlLogin.asp", false);
		oXmlHttp.onreadystatechange = function()
			{
			if(oXmlHttp.readyState == 4)
			eval(oXmlHttp.responseText);
			}
		oXmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		var data = "strId=" + varId + "&strLogin="+ varLogin;
		oXmlHttp.send(data);
		if (oXmlHttp.responseText != '')
			return false;
		else
			return true;
		}
	else if(window.ActiveXObject) // Internet Explorer
		{
		oXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
		oXmlHttp.open("POST", "../_inc/funcCtrlLogin.asp?strId=" + varId + "&strLogin="+ varLogin, false);		
		oXmlHttp.send();		
		if (oXmlHttp.responseText != '')
			return false;
		else
			return true;
		}
	else
		{ // XMLHttpRequest non supporté par le navigateur
		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
		return;
		}
	}

//**** Controle de l'Email si déjà existant
function funcCtrlEmail(varId, varEmail)
	{
		
//	alert ('ok ' + varEmail);
	var StatutValid = "OK";	
	var oXmlHttp = null;
	if(window.XMLHttpRequest) // Firefox
		{
		oXmlHttp = new XMLHttpRequest();
		oXmlHttp.open("POST", "../_inc/funcCtrlEmail.asp", false);
		oXmlHttp.onreadystatechange = function()
			{
			if(oXmlHttp.readyState == 4)
			eval(oXmlHttp.responseText);
			}
		oXmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		var data = "strId=" + varId + "&strEmail="+ varEmail;
		oXmlHttp.send(data);
		if (oXmlHttp.responseText != '')
			return false;
		else
			return true;
		}
	else if(window.ActiveXObject) // Internet Explorer
		{
		oXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
		oXmlHttp.open("POST", "../_inc/funcCtrlEmail.asp?strId=" + varId + "&strEmail="+ varEmail, false);		
		oXmlHttp.send();		
		if (oXmlHttp.responseText != '')
			return false;
		else
			return true;
		}
	else
		{ // XMLHttpRequest non supporté par le navigateur
		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
		return;
		}
	}

function ctlFilter(varForm)
	{
	var blnOk = false;
	var varElement;
	var varId;
	for (i = 0; i < varForm.length; i++)
		{
		if (blnOk)
			return true;
		varElement = varForm.elements[i]
		if (varElement.id.substr(0, varElement.id.indexOf('_')) == 'filterType')
			{
			varId = varElement.id.substr(varElement.id.indexOf('_') + 1);
			if (document.getElementById('filterName_'+varId).value != '')
				blnOk = true;
			}
		}
	return blnOk;
	}