/**
*@pakage utilisateurprofessionnel
*@author Franck PRADAL
*@copyright 2006 SQLI
*version 1.0
**/

/*
*fonction qui permet de rendre visible ou invisible un div
*@param :	- id qui correspond à l'id du div que l'on souhaité traité.
*			- idSelect qui correspond à l'id de la liste déroulante sur 
*			laquelle est déclenchée l'appel de la fonction
*/
function showHideDiv(idDiv, idSelectPays,idSelectVille,idTxtVille){

	//on teste que ce div existe dans la page
	if(document.getElementById(idSelectPays)){
	
		//si l'option sélectionné dans la liste déroulante est vide
		//on cache le div, sinon on le rend visible.
		if(document.getElementById(idSelectPays).value==''){
			document.getElementById(idDiv).style.display='none';
		}else{
			
			// si c'est le pays sélectionné est la France
			// on affiche une liste pour les villes
			if(document.getElementById(idSelectPays).value=='FR'){
				document.getElementById(idSelectVille).style.display='';
				document.getElementById(idTxtVille).style.display='none';
				
			}else{
			//sinon on affiche une zone de saisie pour la ville
				document.getElementById(idSelectVille).style.display='none';
				document.getElementById(idTxtVille).style.display='';
			}
			document.getElementById(idDiv).style.display='';
		}
	}
}//fin showHideDiv



/*
*fonction qui réinitialise le formulaire en vidant toutes les zones de saisies, listes et
* qui cache la sous-partie de l'écran
*@param : idDiv string correspondant à l'id du div du sous-écran à cacher
*/
function annulerInscription(idDiv){

	//on vide l'ensemble du formulaire
	if(document.getElementById('txtenseigne')){
		document.getElementById('txtenseigne').value='';
	}
	
	if(document.getElementById('txtcontact')){
		document.getElementById('txtcontact').value='';
	}

	if(document.getElementById('ddlpays')){
		document.getElementById('ddlpays').value='';
	}

	if(document.getElementById('txtadresse')){
		document.getElementById('txtadresse').value='';
	}
	
	if(document.getElementById('txtcodepostal')){
		document.getElementById('txtcodepostal').value='';
	}
	
	if(document.getElementById('txtville')){
		document.getElementById('txtville').value='';
	}
	
	if(document.getElementById('ddlville')){
		document.getElementById('ddlville').value='';
	}
	
	if(document.getElementById('txttelephone')){
		document.getElementById('txttelephone').value='';
	}
	
	if(document.getElementById('txtfax')){
		document.getElementById('txtfax').value='';
	}
	
	if(document.getElementById('txtemail')){
		document.getElementById('txtemail').value='';
	}
	
	//on cache le sous_écran pour revenir à un formulaire réinitialisé
	document.getElementById(idDiv).style.display='none';
	
	//on enlève la partie concernant le message d'erreur
	document.getElementById('msg_err_bloc').innerHTML = '';
	document.getElementById('msg_err_bloc_box').style.display='';
		
	
	
}//fin annulerInscription

/**
*fonction qui vérifie les champs obligatoires du formulaire
*d'identification de l'espace professionnel.
*@param en entrée : messageErreur chaine de caractères correspondant au message d'erreur à afficher.
*/
function validationFormulaireIdentification(messageErreur){

	//si l'identifiant ou le mot de passe ne sont pas saisi, on affiche un message d'erreur
	if(document.getElementById('txtidentifiant').value=='' || document.getElementById('txtmotdepasse').value==''){
		//on rend visible le div d'affichage du message d'erreur et on l'affiche
		document.getElementById('msg_err_bloc_box').style.display="block";
		document.getElementById('msg_err_bloc').innerHTML = '<span class="red b f11">'+ messageErreur + '</span>';		
	}else{
		document.identification.submit();		
	}
}//fin validationFormulaireIdentification


// Validation sur touche entrée
function validationFormulaireIdentificationParTouche(event, msg) {
	if (window.event) event = window.event;
	if(event.keyCode == 13) validationFormulaireIdentification(msg);
}


/**
*
*fonction qui valide la conformité des informations entrées dans le formulaire
*affiche un message d'erreur, sinon submit le formulaire
*@ param en entrée : 	- tabMessageErreur tableau comportant la liste des différents messages d'erreurs
*/
function validationFormulaireInscription(tabMessageErreur){
	var input_ville = '';
	var messageErreur = '';
	if(document.getElementById('ddlpays').value=='FR'){input_ville='ddlville';
	}else{input_ville='txtville';}

	
	//test des champs obligatoires
	if((document.getElementById('txtenseigne').value=='') 
		|| (document.getElementById('txtcontact').value=='') 
		|| (document.getElementById('selectChaine').value=='') 
		|| (document.getElementById('ddlpays').value=='') 
		|| (document.getElementById('txtadresse').value=='') 
		|| (document.getElementById('txtcodepostal').value=='') 
		|| (document.getElementById(input_ville).value=='') 
		|| (document.getElementById('txtfax').value=='')
		|| (document.getElementById('txttelephone').value=='')
		|| (document.getElementById('txtemail').value=='')){
		messageErreur=tabMessageErreur[0];
	}else{
		//tests sur les formats des champs (téléphone, fax et mail)
		if(document.getElementById('txtemail').value!=''){
			if(!verifMail(document.getElementById('txtemail').value)){
				messageErreur +=tabMessageErreur[1];
			}
		}
		if(!isNumerique(document.getElementById('txttelephone').value)){
				messageErreur +=tabMessageErreur[2];
		}
	}
	
	if(messageErreur!=''){
		document.getElementById('msg_err_bloc_box').style.display="block";
		document.getElementById('msg_err_bloc').innerHTML ='<span class="red b f11">'+ messageErreur + '</span>';
	}else{
		document.inscription.submit();
	}

}

/**
*fonction qui valide le format d'une adresse mail.
*@param en entrée :	- email chaine de caractères correspondant à l'adresse mail
*@param en sortie : - renvoie 1 si le format est valide, sinon 0
*/
function verifMail( email )
{
	
	var maReg = new RegExp ( "^\\w[\\w+\.\-]*@[\\w\-]+\.\\w[\\w+\.\-]*\\w$", "gi" ) ;
 		
	if ( email.search( maReg ) == -1 )
		return false;
	else
		return true;
}






