/**
 *phone number validation script
 */

// Declaring required variables
var digits = "0123456789";
var validateTel;
var validateMail;
var msgerror="";
var selectedsoustheme="theme0";

// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)

//var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 10;

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkPhone(strPhone){
s=stripCharsInBag(strPhone,phoneNumberDelimiters);
return (isInteger(s) && s.length == minDigitsInIPhoneNumber);
}

/* valider l'e.mail*/
function checkMail(mail)
{
	if ((mail.value==null)||(mail.value=="")){
		msgerror="veuillez renseigner votre adresse mail.";
		affichError(msgerror);
		mail.focus();
		validateMail=false;
		return false;
	}
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(mail.value)) {
		msgerror="adresse mail non valide.";
		affichError(msgerror);
		mail.focus();
		validateMail=false;
		return false;
	}
	else validateMail=true;
}
/* valider le tel*/

function checkTel(tel){
		if ((tel.value==null)||(tel.value=="")){
			msgerror="veuillez renseigner votre t\351l\351phone.";
			affichError(msgerror);
			tel.focus();
			validateTel=false;
			return false;
		}
		if ((tel.value.length>14)||(tel.value.length<10)||(checkPhone(tel.value)==false)){
			msgerror="num\351ro de t\351l\351phone non valide.";
			affichError(msgerror);
			tel.value="";
			tel.focus();
			validateTel=false;
			return false;
			
		}
		else validateTel=true;
}

function ValidateForm(){

	var nom=document.svpForm.nom2;
	var prenom=document.svpForm.prenom2;
	var tel=document.svpForm.tel2;
	var mail=document.svpForm.Email2;
	var text=document.svpForm.text;
	var themes=document.svpForm.themes;
	var sous_theme=document.svpForm.sous_theme;
	
	/*verification des infos communs du form*/
	if (themes.selectedIndex==0){
			msgerror="veuillez pr\351ciser votre th\350me.";
			affichError(msgerror);
			return false;
		}
	if (document.getElementById(selectedsoustheme).selectedIndex==0){
			msgerror="veuillez pr\351ciser votre sous-th\350me.";
			affichError(msgerror);
			return false;
		}	
	
		
	if ((text.value==null)||(text.value=="")){
			msgerror="veuillez pr\351ciser votre question.";
			affichError(msgerror);
			return false;
		}	
	if (text.value.length>800){
			msgerror="votre texte est trop long.";
			affichError(msgerror);
			return false;
		}		
	
	/* si le benificiaire est le salari? */
	if (((nom.value==null)||(nom.value==""))&&((prenom.value==null)||(prenom.value==""))&&((tel.value==null)||(tel.value==""))&&((mail.value==null)||(mail.value==""))) 
	{
		
		checkTel(document.svpForm.tel);
		
		if(validateTel==true) {
		document.svpForm.valSTheme.value=document.getElementById(document.svpForm.idSTheme.value).value;
		document.svpForm.submit();
		
		}
	}
	/* le beneficiaire est le conjoit */
	else {
		if ((nom.value==null)||(nom.value=="")){
			msgerror="veuillez renseigner votre nom.";
			nom.focus();
			affichError(msgerror);
			return false;
		}
		if ((prenom.value==null)||(prenom.value=="")){
			msgerror="veuillez renseigner votre pr\351nom.";
			prenom.focus();
			affichError(msgerror);
			return false;
		}

		checkTel(tel);
		
		checkMail(mail);
		
		if((validateMail==true)&&(validateTel==true) ) {
		document.svpForm.valSTheme.value=document.getElementById(document.svpForm.idSTheme.value).value;
		document.svpForm.submit();
		}
		
	}//else
	
	
 }
 
 /* fonction pour afficher le bloc ad?quat pour un th?me connu  */
 function getSousThemes(selectedIndexTheme,length){
 selectedsoustheme=selectedIndexTheme;
	for (i = 0 ; i < length ; i++) 	document.getElementById('theme'+i.toString()).style.display="none";
	document.getElementById(selectedIndexTheme.toString()).style.display="block";
	//document.getElementById(selectedIndexTheme.toString()).selectedIndex=0;
	document.svpForm.idSTheme.value=selectedIndexTheme.toString();
}
 
function getSThemes(selectedIndexTheme,length){
	for (i = 0 ; i < length ; i++) {	
	document.getElementById('stheme'+i.toString()).style.display="none";
	}
	document.getElementById(selectedIndexTheme.toString()).style.display="block";
}
  
  function sstheme(name){
document.annoncform.sth.value= document.getElementById(name).options[document.getElementById(name).options.selectedIndex].value;
}

function ChangeMessage(message,champ)
{
if(document.getElementById)
document.getElementById(champ).innerHTML = message;
}

 function affichError(msg){
 		document.getElementById("MsgErreur").style.display="block";
		ChangeMessage(msg,"Err");
 }
 
function affichBlock(){
if((document.svpForm.nom2.value!="")||(document.svpForm.prenom2.value!="")||(document.svpForm.tel2.value!="")||(document.svpForm.Email2.value!="")){
 		document.getElementById("nom2").style.display="block";
 		document.getElementById("prenom2").style.display="block";
 		document.getElementById("tel2").style.display="block";
 		document.getElementById("Email2").style.display="block";
	}	
	else{
		document.getElementById("nom2").style.display="none";
 		document.getElementById("prenom2").style.display="none";
 		document.getElementById("tel2").style.display="none";
 		document.getElementById("Email2").style.display="none";
	
	}
 }
 
 
function validConsult(){
	var doc = document.annoncform;
	if (doc.themes.selectedIndex==0){
		affichError(msgerror);
		affichError("veuillez selectioner un th\350me.");
		return false;
	}else if(document.getElementById("stheme"+doc.themes.selectedIndex).selectedIndex==0){
		msgerror="veuillez selectioner un sous-th\350me.";
		affichError(msgerror);
		return false;
	}else{
		document.annoncform.submit();
	}
}

function validMajPa(id){
var filter = /^([a-zA-Z])+\_([0-9])+$/;
var car=document.getElementById(id).value.split("_");
	if((document.getElementById(id).value=="")||(!filter.test(document.getElementById(id).value))||(car[0].length>5)){
		msgerror="veuillez renseigner le champ par une r\351f\351rence valide.";
		affichError(msgerror);
		return false;
	}else{
		if(id=="modif"){
			document.mod.submit();
		}else if(id=="suppr"){
			document.supp.submit();
		}
	}
	
}


function validCreatePa(){
	var doc = document.annoncform;
	checkMail(doc.mail)
	if (doc.themes.selectedIndex==0){
		affichError(msgerror);
		affichError("veuillez selectioner un th\350me.");
		return false;
	}else if(document.getElementById("stheme"+doc.themes.selectedIndex).selectedIndex==0){
		msgerror="veuillez selectioner un sous-th\350me.";
		affichError(msgerror);
		return false;
	}else if ((doc.content.value==null)||(doc.content.value=="")){
		msgerror="veuillez renseigner le descriptif de votre annonce.";
		affichError(msgerror);
		content.focus();
			return false;
	}else		
	if((validateMail==false) ) {
		msgerror="adresse mail non valide.";
		affichError(msgerror);
	
		doc.mail.focus();
		validateMail=false;
			return false;
	}else{
		document.annoncform.test.value="1";
		var chp=document.getElementById('stheme'+document.annoncform.themes.selectedIndex);
						
		document.annoncform.test2.value=chp.value;
		
		/* On remplace les accents par un double pour MySQL */
		document.annoncform.content.value = doc.content.value.replace(/'/g,"''");
						
		document.annoncform.submit();
	}
}
function envoi(){
document.annoncform.test.value="1";
document.annoncform.submit();
}

function VerifPass() {
	var newP=document.formPass.newPass.value;
	var CnewPass=document.formPass.CnewPass.value;
	if (document.formPass.login.value=='') {
			msgerror="veuillez saisir votre login.";
			affichError(msgerror);
			document.formPass.login.value='';
			document.formPass.login.focus();
		return false;
			
		} else {
			if (document.formPass.ancienPass.value=='') {
			msgerror="veuillez saisir votre ancien mot de passe.";
			affichError(msgerror);
			document.formPass.ancienPass.value='';
			document.formPass.ancienPass.focus();
		return false;
			
			} else {
				if (document.formPass.newPass.value=='') {
			msgerror="veuillez saisir votre nouveau mot de passe.";
			affichError(msgerror);
			document.formPass.newPass.value='';
			document.formPass.newPass.focus();
		return false;
			}else { 
						if (CnewPass=='') 
						{
							msgerror="veuillez confirmer votre mot de passe.";
							affichError(msgerror);
							document.formPass.CnewPass.value='';
							document.formPass.CnewPass.focus();
		return false;
						}
					}
			}
		}
	
	if (newP!=CnewPass) {
	msgerror="veuillez confirmer le mot de passe.";
	affichError(msgerror);
	document.formPass.CnewPass.value='';
	document.formPass.CnewPass.focus();
		return false;
		} else {
			document.formPass.submit();
			}
}

