var dtCh= "/";
var minYear=1900;
var maxYear=2100;
var passwordMess = "";
var send=0;

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
   
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
	return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}
function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function isDate(dtStr){
	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strDay=dtStr.substring(0,pos1)
	var strMonth=dtStr.substring(pos1+1,pos2)
	var strYear=dtStr.substring(pos2+1)
	var dateNotValide = 0
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){
		passwordMess = passwordMess + "\n La date doit être au format : jj/mm/aaaa";
		send++;
		
	}
	if (strMonth.length<1 || month<1 || month>12){
		dateNotValide++;
		send++;
		
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		dateNotValide++;
		send++;
		
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		dateNotValide++;
		send++;
		
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		dateNotValide++;
		send++;
		
	}
	if(dateNotValide>0){
		passwordMess = passwordMess + "\n Veuillez indiquer une date de naissance valide";
		return false;
	}
return true
}

function ValidateForm(){
	var dt=document.formCreaCompte.jnaiss.value + "/" + document.formCreaCompte.mnaiss.value + "/" + document.formCreaCompte.anaiss.value
	if (isDate(dt)==false){
		return false
	}
    return true
 }
 
 function initAllFields(color){
	var champsInput = document.getElementsByTagName("input");
	var nbInput = champsInput.length;
	for(var t=0;t<nbInput;t++){
		champsInput[t].style.background = "";
	}
	
	var champsInput = document.getElementsByTagName("select");
	var nbInput = champsInput.length;
	for(var t=0;t<nbInput;t++){
		champsInput[t].style.background = "#FFFFFF";
	}
	document.getElementById("hcivilite").style.backgroundColor="";
}

function initAllFieldsConcours(){
	var champsInput = document.getElementsByTagName("input");
	var nbInput = champsInput.length;
	for(var t=0;t<nbInput;t++){
		champsInput[t].style.background = "#FFFFFF";
	}
	
	var champsInput = document.getElementsByTagName("select");
	var nbInput = champsInput.length;
	for(var t=0;t<nbInput;t++){
		champsInput[t].style.background = "#FFFFFF";
	}
}


function atCheck() {
	var mult = 0;
	var dateSaisieCorrect;
	passwordMess = "";
	send=0;
	initAllFields("#FFFFFF");
	dateSaisieCorrect = ValidateForm();
	if (dateSaisieCorrect==false){
		document.forms.formCreaCompte.jnaiss.style.background = "#FFFF00";
		document.forms.formCreaCompte.mnaiss.style.background = "#FFFF00";
		document.forms.formCreaCompte.anaiss.style.background = "#FFFF00";
		send++;
	}
	if (send!=0)
	{
		document.forms.formCreaCompte.jnaiss.style.background = "#FFFF00";
		document.forms.formCreaCompte.mnaiss.style.background = "#FFFF00";
		document.forms.formCreaCompte.anaiss.style.background = "#FFFF00";
	}

	if(document.forms.formCreaCompte.newsletter.checked)
	{
		document.forms.formCreaCompte.newsletter.value=1;
	}

	if ((document.forms.formCreaCompte.civilite[0].checked==false)&&(document.forms.formCreaCompte.civilite[1].checked==false))
		{
		document.getElementById("hcivilite").style.backgroundColor="#FFFF00";
		passwordMess = passwordMess + "\n Civilité manquante";
		send++;
		}
	
	if (document.forms.formCreaCompte.nom.value.trim().length != 0){
		if ((document.forms.formCreaCompte.nom.value.trim().length < 2)&&(document.forms.formCreaCompte.prenom.value.trim().length < 2))
		{
			document.forms.formCreaCompte.nom.style.background = "#FFFF00";
			document.forms.formCreaCompte.prenom.style.background = "#FFFF00";
			passwordMess = passwordMess + "\n Votre nom et votre prénom sont trop courts";
			mult = 1;
			send++;
		}
	}
	
	if (document.forms.formCreaCompte.nom.value.trim().length != 0){
		if ( (document.forms.formCreaCompte.nom.value.trim().length < 2) && (mult=0) )
		{
			document.forms.formCreaCompte.nom.style.background = "#FFFF00";
			passwordMess = passwordMess + "\n Votre nom est trop court";
			send++;
		}
	}
	
	if(document.forms.formCreaCompte.prenom.value.trim().length != 0){
		if ((document.forms.formCreaCompte.prenom.value.trim().length < 2)&& (mult=0))
		{
			document.forms.formCreaCompte.prenom.style.background = "#FFFF00";
			passwordMess = passwordMess + "\n Votre prénom est trop court";
			send++;
		}
	}
	
	var email=document.forms.formCreaCompte.email.value	
	var RE     = null;
	RE = /^[0-9A-Za-z\-\.\_]+@[0-9A-Za-z\-\.\_]+\.[A-Za-z]+$/;
	if (!RE.test(email))
	{
		document.forms.formCreaCompte.email.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Votre adresse email est incorrecte";
		send++;
	}
	
	if (document.forms.formCreaCompte.emailBis.value!=document.forms.formCreaCompte.email.value )
	{
		document.forms.formCreaCompte.email.style.background = "#FFFF00";
		document.forms.formCreaCompte.emailBis.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Votre confirmation d'email est incorrecte";
		send++;
	}
	
	var PS    = null;
	PS = /^[A-Za-z]/;
	if (!PS.test(document.forms.formCreaCompte.pseudo.value.trim())){
		passwordMess = passwordMess + "\n Votre pseudo doit commencer par une lettre";
		send++;
	}
	
	if ((document.forms.formCreaCompte.pseudo.value.trim().length < 3)){
		{
			document.forms.formCreaCompte.pseudo.style.background = "#FFFF00";
			passwordMess = passwordMess + "\n Votre pseudo est trop court";
			send++;
		}
	}
	if (document.forms.formCreaCompte.password.value.trim().length==0 )
	{
		document.forms.formCreaCompte.password.style.background = "#FFFF00";
		document.forms.formCreaCompte.passwordBis.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Merci d’indiquer un mot de passe";
		send++;
	}
	
	if (document.forms.formCreaCompte.password.value!=document.forms.formCreaCompte.passwordBis.value )
	{
		document.forms.formCreaCompte.password.style.background = "#FFFF00";
		document.forms.formCreaCompte.passwordBis.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Les 2 mots de passe saisies ne sont pas identiques";
		send++;
	}
	
	if (document.forms.formCreaCompte.id_destination.value == "0" )
	{
		document.forms.formCreaCompte.id_destination.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Merci d’indiquer votre lieu de résidence";
		send++;
	}
	
	if ((document.forms.formCreaCompte.id_destination.value == "336")&&(document.forms.formCreaCompte.departement.value=="0"))
	{
		document.forms.formCreaCompte.departement.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Merci de préciser votre département";
		send++;
	}
	
	if(send!=0){
		alert("Problèmes sur les champs suivants : " + passwordMess);
		return false;
	}
	else{
		if(passwordMess!=""){
			alert(passwordMess);
			return false;
		}
		else{
			document.forms.formCreaCompte.submit();
		}	
	}
}


function ValidateFormModification(){
	var dt=document.forms.editAccount.jnaiss.value + "/" + document.forms.editAccount.mnaiss.value  + "/" + document.forms.editAccount.anaiss.value 
	if (isDate(dt)==false){
		return false;
	}
	else{
    	return true;
	}
 }


function atCheckModification() {
	var mult=0;
	var dateSaisieCorrect
	passwordMess = "";
	var send=0;
	initAllFields("#FFFFFF");
	dateSaisieCorrect = ValidateFormModification();
	if (dateSaisieCorrect==false){
		document.forms.editAccount.jnaiss.style.background = "#FFFF00";
		document.forms.editAccount.mnaiss.style.background = "#FFFF00";
		document.forms.editAccount.anaiss.style.background = "#FFFF00";
		send++;
	}

	if ((document.forms.editAccount.civilite[0].checked==false)
		&&(document.forms.editAccount.civilite[1].checked==false)
		){
		document.getElementById("hcivilite").style.backgroundColor="#FFFF00";
		passwordMess = passwordMess + "\n Veuillez préciser votre civilité";
		send++;
		}

	if(document.forms.editAccount.nom.value.trim().length != 0){
		if((document.forms.editAccount.nom.value.trim().length < 2 )&&(document.forms.editAccount.prenom.value.trim().length < 2 ))
		{
			document.forms.formCreaCompte.nom.style.background = "#FFFF00";
			document.forms.editAccount.prenom.style.background = "#FFFF00";
			passwordMess = passwordMess + "\n Votre nom et votre prénom sont trop courts";
			mult = 1;
			send++;
		}
	}
	if(document.forms.editAccount.nom.value.trim().length != 0){
		if ((document.forms.editAccount.nom.value.trim().length < 2) && (mult=0))
		{
			document.forms.formCreaCompte.nom.style.background = "#FFFF00";
			passwordMess = passwordMess + "\n Votre nom est trop court";
			send++;
		}
	}

	if(document.forms.editAccount.prenom.value.trim().length != 0){
	if ((document.forms.editAccount.prenom.value.trim().length < 2) && (mult=0))
		{
			document.forms.editAccount.prenom.style.background = "#FFFF00";
			passwordMess = passwordMess + "\n Votre prénom est trop court";
			send++;
		}
	}
	
	
	if (document.forms.editAccount.pseudo.value.trim().length < 3)
	{
		document.forms.editAccount.pseudo.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Votre pseudo est trop court";
		send++;
	}
	var PS    = null;
	PS = /^[A-Za-z]/;
	if (!PS.test(document.forms.editAccount.pseudo.value.trim())){
		passwordMess = passwordMess + "\n Votre pseudo doit commencer par une lettre";
		send++;
	}
	
	if (document.forms.editAccount.password.value.trim().length < 3 )
	{
		document.forms.editAccount.password.style.background = "#FFFF00";
		document.forms.editAccount.passwordBis.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Veuillez indiquer un mot de passe et le confirmer";
		send++;
	}
	
	if (document.forms.editAccount.password.value!=document.forms.editAccount.passwordBis.value )
	{
		document.forms.editAccount.password.style.background = "#FFFF00";
		document.forms.editAccount.passwordBis.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Les 2 mots de passe saisies ne sont pas identiques";
		send++;
	}
	
	if (document.forms.editAccount.id_destination.value == "0" )
	{
		document.forms.editAccount.id_destination.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Veuillez indiquer votre pays";
		send++;
	}
	
	if ((document.forms.editAccount.id_destination.value == "336")&&(document.forms.editAccount.departement.value=="0"))
	{
		document.forms.editAccount.departement.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Veuillez indiquer votre département";
		send++;
	}	
	
	if(send!=0){
		alert(passwordMess);
		return false;
	}
	else{
			return true;
	}	
}

function editField(element){
	if(element.name == "password"){
		document.forms.editAccount.passwordBis.style.borderWidth ="1px";
		document.getElementById("confPassword").style.display = "block";
	}
	if(element.name == "email"){
		document.forms.editAccount.confEmail.style.borderWidth ="1px";
		document.getElementById("confEmail").style.display = "block";
	}
	element.readOnly = false;
	element.style.color="red";
	element.style.borderWidth ="1px";
	
	
}

function maskAfficheRegionModification(element){
	var divRegion = document.getElementById("region")
	if(element=="336"){
		divRegion.style.display = "block";
	}
	else{
		divRegion.style.display = "none";
	}
}

function maskAfficheRegion(element){
	var divRegion = document.getElementById("region")
	if(element=="336"){
		divRegion.style.display = "block";
	}
	else{
		divRegion.style.display = "none";
	}
}

function maskAffichePseudo(isChecked){
	var divPseudo = document.getElementById("divPseudo")
	if(isChecked == true){
		divPseudo.style.display = "block";
	}
	else{
		divPseudo.style.display = "none";
	}
}


function maskAffichePseudoModif(isChecked, pseudo){
	var divPseudo = document.getElementById("divPseudo")
	if(isChecked == true){
		divPseudo.style.display = "block";
		document.forms.editAccount.pseudo.value = pseudo;
	}
	else{
		divPseudo.style.display = "none";
	}
}

function atCheckConcours() {
	var send = 0;
	var passwordMess = "";
	initAllFieldsConcours();
	//alert(document.forms.form_concours.civilite.value);
	if (document.forms.form_concours.civilite.value==null){
		if ((document.forms.form_concours.civilite[0].checked==false)&&(document.forms.form_concours.civilite[1].checked==false)){
			document.forms.form_concours.civilite[0].style.background  = "#FFFF00";
			document.forms.form_concours.civilite[1].style.background  = "#FFFF00";
			passwordMess = passwordMess + "\n Veuillez préciser votre civilite";
			send++;
		}
	}
		
	if (document.forms.form_concours.rue.value.length == 0 )
	{
		document.forms.form_concours.rue.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Veuillez indiquer votre rue";
		send++;
		
	}
	if (document.forms.form_concours.nom.value.length == 0 )
	{
		document.forms.form_concours.nom.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Veuillez indiquer votre nom";
		send++;
		
	}
	if (document.forms.form_concours.prenom.value.length == 0 )
	{
		document.forms.form_concours.prenom.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Veuillez indiquer votre prénom";
		send++;
		
	}
	
	if (document.forms.form_concours.cp.value.length == 0 )
	{
		document.forms.form_concours.cp.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Veuillez indiquer votre code postal";
		send++;
		
	}
	
	
	if (document.forms.form_concours.ville.value.length == 0 )
	{
		document.forms.form_concours.ville.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Veuillez indiquer votre ville";
		send++;
		
	}

	if (document.forms.form_concours.id_destination.value == 0 )
	{
		document.forms.form_concours.id_destination.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Veuillez indiquer votre pays";
		send++;
		
	}
	
	if ((document.forms.form_concours.id_destination.value == 336))
	{
		if(document.forms.form_concours.departement.value=='0'){
			document.forms.form_concours.departement.style.background = "#FFFF00";
			passwordMess = passwordMess + "\n Veuillez indiquer votre département";
			send++;
		}
		
	}
	
	
	if(send!=0){
		alert("Il manque des informations obligatoires" + passwordMess);
		return false;
	}
	else{
		return true;
		
	}	
	
}
	
function atCheckPassword() {
	send=0;
	passwordMess="";
	if (document.forms.formPass.email.value.length == 0 )
	{
		document.forms.formPass.email.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Veuillez saisr une adresse email";
		send++;
	}
	
	var email=document.forms.formPass.email.value.replace(/ /g, "");
	var RE     = null;
	RE = /^[0-9A-Za-z\-\.\_]+@[0-9A-Za-z\-\.\_]+\.[A-Za-z]+$/;
	if ((!RE.test(email)) && send==0)
	{
		document.forms.formPass.email.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Format d'adresse email incorrect";
		send++;
	}
		
	if(send!=0){
		alert(passwordMess);
		return false;
		
	}
	else{
		document.forms.formPass.submit();
	}
}


function checkFields(){
	if(document.forms.profil.description.value.length>500){
		alert("Votre description est trop longue !");
		return false;
		
	}
	else{
		document.forms.profil.submit();
	}
}



 function initAllFieldsEmailMaj(color){
	var champsInput = document.getElementsByTagName("input");
	var nbInput = champsInput.length;
	for(var t=0;t<nbInput;t++){
		champsInput[t].style.background = "";
	}
	
	var champsInput = document.getElementsByTagName("select");
	var nbInput = champsInput.length;
	for(var t=0;t<nbInput;t++){
		champsInput[t].style.background = "#FFFFFF";
	}
}

var post_ok=0;
function CheckMajEmail(f) {
	var mult = 0;
	passwordMess = "";
	send=0;
	initAllFieldsEmailMaj("#FFFFFF");

	var email=f.email.value
	var RE     = null;
	RE = /^[0-9A-Za-z\-\.\_]+@[0-9A-Za-z\-\.\_]+\.[A-Za-z]+$/;
	if (!RE.test(email))
	{
		f.email.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Format d'adresse email incorrect";
		send++;
	}
	
	if (f.email_confirm.value!=f.email.value )
	{
		f.email.style.background = "#FFFF00";
		f.email_confirm.style.background = "#FFFF00";
		passwordMess = passwordMess + "\n Le confirmation d'email est incorrecte";
		send++;
	}
	
	if (f.password.value.trim().length==0 )
	{
		f.password.style.background = "#FFFF00";
                passwordMess = passwordMess + "\n Mot de passe manquant";
		send++;
	}

	if(send!=0){
		self.alert("Problèmes sur les champs suivants : " + passwordMess);
		//return false;
	}
	else{
          
          
             CheckEtat(f);
             //self.alert(post_ok);
             //if (post_ok==1) {
	     //f.action="/membre_popup_maj_email.asp";
             //f.submit();
             //}
	}
}

function CheckEtat(f) {
		var xhr_object = null;
            	if(window.XMLHttpRequest) // Firefox
              		xhr_object = new XMLHttpRequest();
            	else if(window.ActiveXObject) // Internet Explorer
			xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
            	else { // XMLHttpRequest non supporté par le navigateur
              		self.alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
              		return;
        	}
		xhr_object.open("POST", "/includes/communaute/http_dispo_email.asp", true);
	        xhr_object.onreadystatechange = function() {
	        if(xhr_object.readyState == 4)
	        	
			try {
                            eval(xhr_object.responseText);
                        } catch (e) {
                            self.alert("Erreur:\n"+xhr_object.responseText);
                        }
			
	        	}
	        	//self.alert(qte + ' - ' + ID);
		xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	        var data = "email="+f.email.value+"&password="+f.password.value;
	        xhr_object.send(data);
	  	
}

function changeElementText(id, newText)
{
    element = document.getElementById(id);
    element.innerHTML = newText;
}

function pop_email()
{
        var fiche=window.open('/membre_popup_maj_email.asp', 'Routard','location=0,directories=0,status=0,menubar=0, toolbar=0,scrollbars=0,resizable=0, copyhistory=0,width=466,height=220');
        if (navigator.appVersion.substring(1,0)>="3")
        {
        fiche.focus(); 
        }
}