/* //////////////////////////////////////////////////////
fonction (utilisée pour la validation des champs de fomulaires):
	interdit la saisie des accents et caracteres speciaux
	(activée sur chque champ avec onKeyPress)
////////////////////////////////////////////////////// */ 

/* copie dessous de la fonction, on a enlevé le controle sur les accents
function valid_champ(evt) {
	var keyCode = evt.which ? evt.which : evt.keyCode;
	var interdit = 'àâäãçéèêëìîïòôöõùûüñ&*?!:;,\t#~"^¨%$£?²¤§%*()[]{}<>|\\/`\'';
	if (interdit.indexOf(String.fromCharCode(keyCode)) >= 0) {
		return false;
	}
};
*/
function valid_champ(evt) {
	var keyCode = evt.which ? evt.which : evt.keyCode;
	// alert (keyCode);
	switch (String.fromCharCode(keyCode)) {
		case '\t':
		case '\n':
		case '\b':
			return true;
	}
	
	var interdit = '*?!:;,#~"^¨%$£?²¤§%*()[]{}<>|\\/`\'';
	if (interdit.indexOf(String.fromCharCode(keyCode)) >= 0) {
		return false;
	}
	else {
		return true;
	}
};
/* //////////////////////////////////////////////////////
fonction (similaire a valid_champ ci-dessus mais adaptée 
	pour les numero de telephone):
	accepte les chiffres et . / + et ()
	(activée sur chque champ avec onKeyPress)	
////////////////////////////////////////////////////// */ 
function valid_tel(evt) {
	var keyCode = evt.which ? evt.which : evt.keyCode;
	//alert ( "key : " + evt.keyCode);
	switch (String.fromCharCode(keyCode)) {
		case '\b':
		case '\t':
		case '\n':
			return true
	}
	
	var autorise = '0123456789./()+ ';
	if (autorise.indexOf(String.fromCharCode(keyCode)) >= 0) {
		return true;
	}
	else{
		return false;
	}
};

/* //////////////////////////////////////////////////////
fonction utilisée pour valider le formulaire
	interdit les champs a vide (associée a Trim qui enleveles blancs de 
	de debut et de fin de chaine)	
////////////////////////////////////////////////////// */ 
function validate(formCheck) {

	// alert ("Dans validate");
		
	formCheck.nomSociete.value = Trim(formCheck.nomSociete.value);
	if(formCheck.nomSociete.value == "")
	{
		alert("Please provide a company name");
		formCheck.nomSociete.focus();
		return false;
	}
	formCheck.adresseSociete.value = Trim(formCheck.adresseSociete.value);
	if(formCheck.adresseSociete.value == "")
	{
		alert("Please provide a company address");
		formCheck.adresseSociete.focus();
		return false;
	}
	formCheck.villeSociete.value = Trim(formCheck.villeSociete.value);
	if(formCheck.villeSociete.value == "")
	{
		alert("Please provide a city for your company");
		formCheck.villeSociete.focus();
		return false;
	}
	formCheck.telSociete.value = Trim(formCheck.telSociete.value);
	if(formCheck.telSociete.value == "")
	{
		alert("Please provide a phone number for your company");
		formCheck.telSociete.focus();
		return false;
	}
	formCheck.nomClient.value = Trim(formCheck.nomClient.value);
	if(formCheck.nomClient.value == "")
	{
		alert("Please provide your name");
		formCheck.nomClient.focus();
		return false;
	}
	formCheck.prenomClient.value = Trim(formCheck.prenomClient.value);
	if(formCheck.prenomClient.value == "")
	{
		alert("Please provide your first name");
		formCheck.prenomClient.focus();
		return false;
	}
	var email_lower = Trim(formCheck.emailClient.value);
	formCheck.emailClient.value = email_lower.toLowerCase(); 
	if(formCheck.emailClient.value == "")
	{
		alert("Please provide your email");
		formCheck.emailClient.focus();
		return false;
	}
	formCheck.emailClient.value = Trim(formCheck.emailClient.value);
	email = formCheck.emailClient.value;
	if (testAdrMail(email) == false)
	{
		alert("Please provide an email-adress valid");
		formCheck.emailClient.focus();
		return false;
	}
	formCheck.adresseClient.value = Trim(formCheck.adresseClient.value);		
	if(formCheck.adresseClient.value == "")
	{
		alert("Please provide your adress");
		formCheck.adresseClient.focus();
		return false;
	}
	formCheck.villeClient.value = Trim(formCheck.villeClient.value);
	if(formCheck.villeClient.value == "")
	{
		alert("Please provide your city");
		formCheck.villeClient.focus();
		return false;
	}
	formCheck.telClient.value = Trim(formCheck.telClient.value);
	if(formCheck.telClient.value == "")
	{
		alert("Please provide your phone number");
		formCheck.telClient.focus();
	return false;
	}
	formCheck.mobileClient.value = Trim(formCheck.mobileClient.value);
	if(formCheck.mobileClient.value == "")
	{
		alert("Please provide your cellphone");
		formCheck.mobileClient.focus();
		return false;
	}
	formCheck.password.value = Trim(formCheck.password.value);
	if(formCheck.password.value == "")
	{
		alert("Please provide your password");
		formCheck.password.focus();
		return false;
	}
	formCheck.password2.value = Trim(formCheck.password2.value);
	if(formCheck.password2.value == "")
	{
		alert("Please provide the confirmation password");
		formCheck.password.focus();
		return false;
	}
	var num = formCheck.password.value.length;
	if(num<5)
	{		 
		alert("The password must comprise 5 characters at minimum. Please provide a new password");
		formCheck.password.focus();
		return false;
	}
	var pass1 = formCheck.password.value;	
	var pass2 = formCheck.password2.value;
	if(pass1 != pass2)
	{
		alert("The two password are differents");
		formCheck.password.focus();
		return false;
	}
	formCheck.captcha_code.value = Trim(formCheck.captcha_code.value);
	if(formCheck.captcha_code.value == "")
	{
		alert("Please provide the 'Security Image number'");
		formCheck.captcha_code.focus();
		return false;
	}
	return true;
	// n'a plus de raison d'etre vu que le champs n'existe plus 
	//formCheck.rattachement.value = Trim(formCheck.rattachement.value);
	//if(formCheck.rattachement.value == "")
	//{
	//	alert("Please provide a rattachement");
	//	formCheck.rattachement.focus();
	//	return false;
	//}*/
	
};

function testAdrMail(adrMail)
{ 

 adrMailLength=adrMail.length; 
 caractOk="_.-0123456789abcdefghijklmnopqrstuvwxyz"; 
 var posArrobas=adrMail.indexOf('@',1); 
 var posPoint=adrMail.lastIndexOf('.',adrMailLength); 
 var posCaractFaux=adrMail.indexOf('..',posArrobas+1); 
 var caract=0;
 var caractFaux=adrMail.charAt(0)+adrMail.charAt(posArrobas-1)+adrMail.charAt(posArrobas+1)+adrMail.charAt(posPoint-1); 
 var posCaract=0;  
 var posCaractOk=0;  
 var posCaractNon=-1; 
 var retour=false;  
  
 if (posCaractFaux!=-1 || adrMail.indexOf(' ',0)!=-1 || adrMail.indexOf('--',0)!=-1 || adrMail.indexOf('__',0)!=-1)
 { 
    posCaractFaux=0; 
 } 
   
 for (posCaract;posCaract<4;posCaract++)
 { 
     caract=caractFaux.charAt(posCaract); 
     posCaractNon=caractOk.lastIndexOf(caract,2); 
     if (posCaractNon!=-1)
	 { 
        posCaractFaux=0; 
        break; 
     } 
 } 

 if (adrMailLength>0 && posArrobas!=-1 && posPoint!=-1 && posArrobas<posPoint && posCaractFaux==-1 && adrMailLength-posPoint-1>=2 && adrMailLength-posPoint-1<=4)
 { 
    adrMail=adrMail.toLowerCase(); 
    posCaract=0; 
  
    while (posCaract<posArrobas && posCaractOk!=-1)
	{ 
          caract=adrMail.charAt(posCaract); 
          posCaractOk=caractOk.indexOf(caract,0); 
          posCaract++; 
    } 
    posCaract++; 

    while (posCaract<posPoint && posCaractOk!=-1)
	{ 
          caract=adrMail.charAt(posCaract); 
          posCaractOk=caractOk.indexOf(caract,1); 
          posCaract++; 
    } 
    posCaract++;
	
    while (posCaract<adrMailLength && posCaractOk!=-1)
	{ 
          caract=adrMail.charAt(posCaract); 
          posCaractOk=caractOk.indexOf(caract,13); 
          posCaract++; 
    } 
	
    if (posCaractOk!=-1) 
	{ 
       retour=true; 
    } 
 } 
 return retour;  
};
  
function chiffres(event)
{
	if(!event&&window.event)
	{
		event=window.event;
	}
	if(event.keyCode < 48 || event.keyCode > 57)
	{
		event.returnValue = false;
		event.cancelBubble = true;
	}
	if(event.which < 48 || event.which > 57)
	{
		event.preventDefault();
		event.stopPropagation();
	}
};
    
function popUp(adresse)
{     
    window.open(adresse,'','resizeable=no, width=380, height=160'); 
};
function popUp2(adresse)
{     
    window.open(adresse,'','resizeable=no, width=650, height=360'); 
};
function select1()
{
	document.getElementsByName("sousFonction2")[1].checked = true; 
};
function select0()
{
	document.getElementsByName("sousFonction2").checked = true; 
};
// utilisé pour les checkbox dans Update_Profile/editprofile.php4
function select2()
{
	if (document.getElementById("sf1").checked == true)
	{
		document.getElementById("sf2").checked = true;
	}
	else
	{
		document.getElementById("sf2").checked = false;
	}
};
// les deux suivantes sont utilisées dans NewUser pour la selection des checkbox
function select_free()
{	
	if(document.inscription.check_doc_full.checked == true)
	{
		document.inscription.check_doc_free.checked = true;
	}
};
function unselect_full()
{	
	if(document.inscription.check_doc_free.checked == false)
	{
		document.inscription.check_doc_full.checked = false;
	}
};
/* //////////////////////////////////////////////////////
fonction enelevant les espaces blancs de debut et de fin de chaine	
////////////////////////////////////////////////////// */ 
function Trim(TRIM_VALUE){
	if(TRIM_VALUE.length < 1){
	return"";
	}
	TRIM_VALUE = RTrim(TRIM_VALUE);
	TRIM_VALUE = LTrim(TRIM_VALUE);
	if(TRIM_VALUE==""){
		return "";
	}else{
		return TRIM_VALUE;
	}
} //End Function

function RTrim(VALUE){
	var w_space = String.fromCharCode(32);
	var v_length = VALUE.length;
	var strTemp = "";
	if	(v_length < 0){
		return"";
	}
	var iTemp = v_length -1;

	while(iTemp > -1){
		if	(VALUE.charAt(iTemp) == w_space){
		}else{
			strTemp = VALUE.substring(0,iTemp +1);
			break;
		}
		iTemp = iTemp-1;

	} //End While
	return strTemp;

} //End Function

function LTrim(VALUE){
	var w_space = String.fromCharCode(32);
	if	(v_length < 1){
		return"";
	}
	var v_length = VALUE.length;
	var strTemp = "";

	var iTemp = 0;

	while(iTemp < v_length){
		if	(VALUE.charAt(iTemp) == w_space){
		}else{
			strTemp = VALUE.substring(iTemp,v_length);
			break;
		}
		iTemp = iTemp + 1;
	} //End While
	return strTemp;
} //End Function

