/****
Fichier de scripts javascript
****/

/***
Scripts de validation des formulaires
***/
var min=0;
var max=0;
var nom="";
var type="";
var option="";
var comparaison="";
var id_reference="";
var valeur_reference=0;
var nom_reference="";

function validform(form){

	for (i=0;i<form.elements.length;i++){
		var ch=form.elements[i].id;
		if (!ch) continue;
		if (ch.indexOf("@") >0 ){

			// raz des variables
			init_var();

			// decoupage des id en actions
			tab_cmd=form.elements[i].id.split("@");
			for(j=0 ; j<tab_cmd.length ; j++){
				//alert(tab_cmd[j]);
				eval(tab_cmd[j]);
			}

			/****
			Gestion du facultatif : le controle n'est effectué que si le champ contient quelquechose
			****/
			if (form.elements[i].value.length == 0 && option == "facultatif")	{
				continue;
			}



			/***
			Nombre de caractères insuffisants
			***/
			if (min > 0 && form.elements[i].value.length < min)	{
				alert("La zone "+nom+" doit contenir au minimum "+min+" caratères ");
				if (form.elements[i].style.display!='none' && form.elements[i].type!="hidden") form.elements[i].focus();
				return false;
			}	



			/***
			Nombre de caractères trop important
			***/
			if (max > 0 && form.elements[i].value.length > max)	{
				if (max >1) s="s";
				alert("La zone "+nom+" doit contenir au maximum "+max+" caratère"+s);
				if (form.elements[i].style.display!='none' && form.elements[i].type!="hidden") form.elements[i].focus();
				return false;
			}	


			/***
			Type email
			***/
			if (form.elements[i].value.length > 0 && type == "email" ) {
				var pattern=/^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/
				if(pattern.exec(form.elements[i].value)==null){
					alert("la zone "+nom+" ne contient pas une adresse mail valide");
					if (form.elements[i].style.display!='none' && form.elements[i].type!="hidden") form.elements[i].focus();
					return false;
				}
			}

			/***
			Type entier
			***/
			if (form.elements[i].value.length > 0 && type == "entier" ) {
				var pattern=/^(-)?[0-9]{0,}$/
				if(pattern.exec(form.elements[i].value)==null){
					alert("la zone "+nom+" ne doit contenir que des chiffres");
					if (form.elements[i].style.display!='none' && form.elements[i].type!="hidden") form.elements[i].focus();
					return false;
				}
			}

			/***
			Type decimal
			***/
			if (form.elements[i].value > 0 && type == "decimal" ) {
				var pattern=/^[0-9]{1,}[.,]{0,1}[0-9]{0,}$/
				if(pattern.exec(form.elements[i].value)==null){
					alert("les données de la zone "+nom+" doivent être de type décimal (ex: 45.36 ou 3,6)");
					if (form.elements[i].style.display!='none' && form.elements[i].type!="hidden") form.elements[i].focus();
					return false;
				}
			}

			/***
			Comparaison
			***/
			if (form.elements[i].value != "" && comparaison != "" ) {
				var donnee1="";
				var donnee2="";
				var reference="";
				var pattern="/[0-9]{2}[/]{1}[0-9]{2}[/]{1}[0-9]{4}/";
				if(type == "date" && pattern.exec(form.elements[i].value)!=null) {
					donnee1 = form.elements[i].value.substr(6,4)+form.elements[i].value.substr(3,2)+form.elements[i].value.substr(0,2);
					if(id_reference!=""){
						donnee2 = document.getElementById(id_reference).value.substr(6,4)+document.getElementById(id_reference).value.substr(3,2)+document.getElementById(id_reference).value.substr(0,2);
						reference="la zone "+nom_reference;
					}
					else{
						donnee2=valeur_reference.substr(6,4)+valeur_reference.substr(3,2)+valeur_reference.substr(0,2);
						reference=valeur_reference;
					}
						
				}
				else if (valeur_reference != ''){
					donnee1=form.elements[i].value;
					if(id_reference!=""){
						donnee2=document.getElementById(id_reference).value;
						reference="la zone "+nom_reference;
					}
					else{
						donnee2=valeur_reference;
						reference=valeur_reference;
					}
				} else {
					donnee1=form.elements[i].value;
					donnee2=form.elements[reference_zone].value;
					reference=reference_nom;
				}


				if(comparaison=='inferieur'){
					if(donnee1>=donnee2){	
						alert("La zone "+nom+" doit être inférieure à "+reference);
						if (form.elements[i].style.display!='none' && form.elements[i].type!="hidden") form.elements[i].focus();
						return false;
					}
				}
				else if(comparaison=='superieur'){
					if(donnee1<=donnee2){	
						alert("La zone "+nom+" doit être supérieure à "+reference);
						if (form.elements[i].style.display!='none' && form.elements[i].type!="hidden") form.elements[i].focus();
						return false;
					}
				}
				else if(comparaison=='identique'){
					if(donnee1!=donnee2){	
						alert("La zone "+nom+" doit être identique à la zone "+reference);
						if (form.elements[i].style.display!='none' && form.elements[i].type!="hidden") form.elements[i].focus();
						return false;
					}
				}

			}
		}
	}
	return true;
}


function init_var(){
	min=0;
	max=0;
	nom="";
	type="";
	comparaison="";
	id_reference="";
	valeur_reference=0;
	nom_reference="";
}


/****
Fonctions de la barre de navigation
****/
// bouton précédent
function barre_precedent(){
	history.back();
}

// bouton suivant
function barre_suivant(){
	history.forward();
}

// bouton page d'accueil
function barre_home(){
	navigation.location="affiche_page.phtml";
}


// bouton impression
function barre_imprimer(){
	document.navigation.focus();
	if (document.navigation.noprint != 1) 
		document.navigation.print();
	else
		alert(document.navigation.noprint_msg);
}

// bouton recherche
function barre_recherche(){
	navigation.location="recherche.phtml";
}

// bouton favoris
function barre_favoris(){
	navigation.location="favoris.phtml";
}

// bouton favoris
function barre_admin(){
	navigation.location="administration.phtml";
}

/****
ouvre un popup accessible uniquement par un user identifié
Ce popup lui permet permet de modifie les articles et les elements de la page courante
****/
function open_page_modif (page_id,rubrique_id,sousrubrique_id) {
	window.open("/affiche_page_temp.phtml?page_id="+page_id+"&rubrique_id="+rubrique_id+"&sousrubrique_id="+sousrubrique_id+"&modifinfo=1","modifinfo","toolbar=no,height=600,scrollbars=1,top=30,left=100,resizable=yes,scrollbars=yes");
}

/****
Lancer par un popup -> permet le relaod de son "opener"
****/
function reload_opener () {
	window.opener.location.reload();
}

/****
Ouvre un popup -> réunit les propriete d'affichage d'un element de la bibliotheque
****/
function open_page_bibliofic (bibliofic_id,colonne_id,rubrique_id,sousrubrique_id) {
	window.open("/affiche_popup_bibliofic.phtml?bibliofic_id="+bibliofic_id+"&colonne_id="+colonne_id+"&rubrique_id="+rubrique_id+"&sousrubrique_id="+sousrubrique_id+"","","toolbar=no,width=450,height=200,scrollbars=1,top=200,left=400");
}


/****
Affiche le menu de commande pour chaque item (Permet de gerer la position, la modification et la suppression d'un article)
****/
function display_item(id,etat){
	if (etat == 0) { document.getElementById('cmd_'+id).style.display='none'; } 
	else { document.getElementById('cmd_'+id).style.display='inline'; }
}


/****
fonction de verification du formulaire de "Contact"
****/
function verif_form_contact () {
	message = "Les champs suivants doivent être renseignés :\n";
	ok = true;
	var pattern=/^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/
	if (document.f_contact.contact_objet.value == '') {
		ok = false;
		message = message + "- Objet\n";
	}
	if (document.f_contact.contact_nom.value == '') {
		ok = false;
		message = message + "- Nom\n";
	}
	if (document.f_contact.contact_codepostal.value == '') {
		ok = false;
		message = message + "- Code postal\n";
	}
	if (document.f_contact.contact_ville.value == '') {
		ok = false;
		message = message + "- Ville\n";
	}
	if (document.f_contact.contact_adresse.value == '') {
		ok = false;
		message = message + "- Adresse\n";
	}
	if (document.f_contact.contact_telephone.value == '') {
		ok = false;
		message = message + "- Telephone\n";
	}
	if (document.f_contact.contact_from.value == '') {
		ok = false;
		message = message + "- Adresse Mail\n";
	}
	if (document.f_contact.contact_from.value != '') {
		if(pattern.exec(document.f_contact.contact_from.value)==null)
		{
			ok = false;
			message = message + "- L'email n'est pas valide\n";
		}
	}
	if (document.f_contact.contact_message.value == '') {
		ok = false;
		message = message + "- Message\n";
	}
	
	if (ok == false) {alert(message);return false;}
	else {return true;}
	
}

/****
Ouvre le popup pour modification des articles de la page d'accueil
****/
function open_popup_accueil (article_id) {
	window.open("/affiche_popup_accueil.phtml?article_id="+article_id+"","","toolbar=no,width=600,height=400,scrollbars=1,top=200,left=200");
}

/****
Ouvre le popup pour modification des actualités de la page d'accueil
****/
function open_popup_actu (article_id,page_article) {
	window.open("/affiche_popup_actu.phtml?article_id="+article_id+"&page_article="+page_article+"","","toolbar=no,height=600,width=800,scrollbars=1,top=50,left=50,resizable=yes,scrollbars=yes");
}

/****
Vider l'input du login
****/
function vider_input_login (texte) {
	if (document.form_connection.USERS_LOGIN.value == texte) {
		document.form_connection.USERS_LOGIN.value = '';
	}
}

/****
Remplit l'input du login
****/
function rempli_input_login (texte) {
	if (document.form_connection.USERS_LOGIN.value == '') {
		document.form_connection.USERS_LOGIN.value = texte;
	}
}

/****
Vider l'input du login
****/
function vider_input_codecip (texte) {
	if (document.form_connection.USERS_CODE_CIP.value == texte) {
		document.form_connection.USERS_CODE_CIP.value = '';
	}
}

/****
Remplit l'input du login
****/
function rempli_input_codecip (texte) {
	if (document.form_connection.USERS_CODE_CIP.value == '') {
		document.form_connection.USERS_CODE_CIP.value = texte;
	}
}

/****
Vider l'input du login
****/
function vider_input_clecip (texte) {
	if (document.form_connection.USERS_CLE_CIP.value == texte) {
		document.form_connection.USERS_CLE_CIP.value = '';
	}
}

/****
Remplit l'input du login
****/
function rempli_input_clecip (texte) {
	if (document.form_connection.USERS_CLE_CIP.value == '') {
		document.form_connection.USERS_CLE_CIP.value = texte;
	}
}

/****
Vider l'input du mot de passe
****/
function vider_input_password (texte) {
	if (document.form_connection.USERS_PASSWORD.value == texte) {
		document.form_connection.USERS_PASSWORD.value = '';
		//document.form_connection.USERS_PASSWORD.type = 'password';
	}
}

/****
Remplit l'input du mot de passe
****/
function rempli_input_password (texte) {
	if (document.form_connection.USERS_PASSWORD.value == '') {
		document.form_connection.USERS_PASSWORD.value = texte;
		//document.form_connection.USERS_PASSWORD.type = 'text';
	}
}

function affiche_password () {
	document.getElementById('USERS_PASSWORD').style.display='inline';
	document.getElementById('USERS_PASSWORD_TEXT').style.display='none';
	document.getElementById('USERS_PASSWORD').focus();
}


/****
Vider l'input du rechercher sur le site
****/
function vider_input_rechercher (texte) {
	if (document.form_rechercher.recherche.value == texte) {
		document.form_rechercher.recherche.value = '';
	}
}
/****
Vider l'input du rechercherproduit sur OffiBoutique
****/
function vider_input_rechercher_produit (texte) {
	if (document.form_rechercher_produit.rechercheproduit.value == texte) {
		document.form_rechercher_produit.rechercheproduit.value = '';
	}
}

/****
Ouvre le popup d'impression de l'article
****/
function open_popup_impression (article_id) {
	window.open("/impression_article.phtml?article_id="+article_id+"","","toolbar=no,width=750,scrollbars=1,top=50,left=50,resizable=yes,scrollbars=yes");
}

/****
Ouvre le popup d'envoi de l'article
****/
function open_popup_envoi (article_id) {
	window.open("/envoi_article.phtml?article_id="+article_id+"","","toolbar=no,width=700,height=500,scrollbars=1,top=50,left=50,resizable=yes,scrollbars=yes");
}

/****
Vérification du formulaire d'envoi d'un aticle
****/
function verif_form_envoi_article () {
	message = "Les champs suivants doivent être renseignés :\n";
	ok = true;
	var pattern=/^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/
	if (document.f_envoi_article.envoi_objet.value == '') {
		ok = false;
		message = message + "- Objet\n";
	}
	if (document.f_envoi_article.envoi_nom.value == '') {
		ok = false;
		message = message + "- Nom\n";
	}
	if (document.f_envoi_article.envoi_prenom.value == '') {
		ok = false;
		message = message + "- Prénom\n";
	}
	if (document.f_envoi_article.envoi_from.value == '') {
		ok = false;
		message = message + "- Email\n";
	}
	if (document.f_envoi_article.envoi_from.value != '') {
		if(pattern.exec(document.f_envoi_article.envoi_from.value)==null){
			ok = false;
			message = message + "- L'email n'est pas valide\n";
		}
	}
	if ((document.f_envoi_article.envoi_emaildestinataire1.value == '') && 
		(document.f_envoi_article.envoi_emaildestinataire2.value == '') && 
		(document.f_envoi_article.envoi_emaildestinataire3.value == '') && 
		(document.f_envoi_article.envoi_emaildestinataire4.value == '') && 
		(document.f_envoi_article.envoi_emaildestinataire5.value == '')) {
		ok = false;
		message = message + "- Vous devez saisir au moins un email destinataire\n";
	}
	if (document.f_envoi_article.envoi_emaildestinataire1.value != '') {
		if(pattern.exec(document.f_envoi_article.envoi_emaildestinataire1.value)==null){
			ok = false;
			message = message + "- La première 1ère email destinataire n'est pas valide\n";
		}
	}
	if (document.f_envoi_article.envoi_emaildestinataire2.value != '') {
		if(pattern.exec(document.f_envoi_article.envoi_emaildestinataire2.value)==null){
			ok = false;
			message = message + "- La 2ème adresse email destinataire n'est pas valide\n";
		}
	}
	if (document.f_envoi_article.envoi_emaildestinataire3.value != '') {
		if(pattern.exec(document.f_envoi_article.envoi_emaildestinataire3.value)==null){
			ok = false;
			message = message + "- La 3ème adresse email destinataire n'est pas valide\n";
		}
	}
	if (document.f_envoi_article.envoi_emaildestinataire4.value != '') {
		if(pattern.exec(document.f_envoi_article.envoi_emaildestinataire4.value)==null){
			ok = false;
			message = message + "- La 4ème adresse email destinataire n'est pas valide\n";
		}
	}
	if (document.f_envoi_article.envoi_emaildestinataire5.value != '') {
		if(pattern.exec(document.f_envoi_article.envoi_emaildestinataire5.value)==null){
			ok = false;
			message = message + "- La 5ème adresse email destinataire n'est pas valide\n";
		}
	}
	
	if (ok == false) {alert(message);return false;}
	else {return true;}
	
}

/****
Vérification du formulaire d'envoi du tirage au sort
****/
function verif_form_envoi_tirage () {
	message = "Les champs suivants doivent être renseignés :\n";
	ok = true;
	var pattern=/^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/
	if (document.f_tirage.tirage_nompharmacie.value == '') {
		ok = false;
		message = message + "- Nom de la pharmacie\n";
	}
	if (document.f_tirage.tirage_nomtitulaire.value == '') {
		ok = false;
		message = message + "- Nom du titulaire\n";
	}
	if (document.f_tirage.tirage_adresse.value == '') {
		ok = false;
		message = message + "- Adresse\n";
	}
	if (document.f_tirage.tirage_codepostal.value == '') {
		ok = false;
		message = message + "- Code postal\n";
	}
	if (document.f_tirage.tirage_ville.value == '') {
		ok = false;
		message = message + "- Ville\n";
	}
	if (document.f_tirage.tirage_tel.value == '') {
		ok = false;
		message = message + "- Numéro de téléphone\n";
	}
	if (document.f_tirage.tirage_email.value != '') {
		if(pattern.exec(document.f_tirage.tirage_email.value)==null){
			ok = false;
			message = message + "- L'email n'est pas valide\n";
		}
	}
		
	if (ok == false) {alert(message);return false;}
	else {return true;}
}

/****
Modification de l'etat de la checkbox "autre"
****/
function change_etat () {
	if (document.f_bulletin.bulletin_autres.checked) {document.f_bulletin.bulletin_detailautres.disabled = false;}
	else {document.f_bulletin.bulletin_detailautres.disabled = true;}
}

/****
Vérification du formulaire d'envoi du bulletin de reponse
****/
function verif_form_envoi_bulletin () {
	message = "Les champs suivants doivent être renseignés :\n";
	ok = true;
	var pattern=/^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/
	if (document.f_bulletin.bulletin_nompharmacie.value == '') {
		ok = false;
		message = message + "- Nom de la pharmacie\n";
	}
	if (document.f_bulletin.bulletin_nomtitulaire.value == '') {
		ok = false;
		message = message + "- Nom du titulaire\n";
	}
	if (document.f_bulletin.bulletin_adresse.value == '') {
		ok = false;
		message = message + "- Adresse\n";
	}
	if (document.f_bulletin.bulletin_codepostal.value == '') {
		ok = false;
		message = message + "- Code postal\n";
	}
	if (document.f_bulletin.bulletin_ville.value == '') {
		ok = false;
		message = message + "- Ville\n";
	}
	if (document.f_bulletin.bulletin_tel.value == '') {
		ok = false;
		message = message + "- Numéro de téléphone\n";
	}
	if (document.f_bulletin.bulletin_email.value != '') {
		if(pattern.exec(document.f_bulletin.bulletin_email.value)==null){
			ok = false;
			message = message + "- L'email n'est pas valide\n";
		}
	}
		
	if (ok == false) {alert(message);return false;}
	else {return true;}
}


/****
fonction de verification du formulaire de demande de mot de passe
****/
function verif_form_demandepwd () {
	message = "Les champs suivants doivent être renseignés :\n";
	ok = true;
	var pattern=/^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/
	if (document.f_demandepwd.demandepwd_code.value == '') {
		ok = false;
		message = message + "- Code préfectoral\n";
	}
	if (document.f_demandepwd.demandepwd_pharmacie.value == '') {
		ok = false;
		message = message + "- Pharmacie\n";
	}
	if (document.f_demandepwd.demandepwd_codepostal.value == '') {
		ok = false;
		message = message + "- Code postal\n";
	}
	if (document.f_demandepwd.demandepwd_ville.value == '') {
		ok = false;
		message = message + "- Ville\n";
	}
	if (document.f_demandepwd.demandepwd_adresse.value == '') {
		ok = false;
		message = message + "- Adresse\n";
	}
	if (document.f_demandepwd.demandepwd_telephone.value == '') {
		ok = false;
		message = message + "- Telephone\n";
	}
	if (document.f_demandepwd.demandepwd_from.value != '') {
		if(pattern.exec(document.f_demandepwd.demandepwd_from.value)==null){
			ok = false;
			message = message + "- L'email n'est pas valide\n";
		}
	}
	if (document.f_demandepwd.demandepwd_from.value == '') {
		ok = false;
		message = message + "- Email\n";
	}
	
	if (ok == false) {alert(message);return false;}
	else {return true;}
	
}

/****
fonction de verification du formulaire de "Contact"
****/
function verif_form_contact_formation () {
	message = "Les champs suivants doivent être renseignés :\n";
	ok = true;
	var pattern=/^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/
	if (document.f_contact.contact_nom.value == '') {
		ok = false;
		message = message + "- Nom\n";
	}
	if (document.f_contact.contact_codepostal.value == '') {
		ok = false;
		message = message + "- Code postal\n";
	}
	if (document.f_contact.contact_ville.value == '') {
		ok = false;
		message = message + "- Ville\n";
	}
	if (document.f_contact.contact_adresse.value == '') {
		ok = false;
		message = message + "- Adresse\n";
	}
	if (document.f_contact.contact_telephone.value == '') {
		ok = false;
		message = message + "- Telephone\n";
	}
	if (document.f_contact.contact_from.value == '') {
		ok = false;
		message = message + "- Adresse Mail\n";
	}
	if (document.f_contact.contact_from.value != '') {
		if(pattern.exec(document.f_contact.contact_from.value)==null)
		{
			ok = false;
			message = message + "- L'email n'est pas valide\n";
		}
	}
	if (document.f_contact.contact_message.value == '') {
		ok = false;
		message = message + "- Message\n";
	}
	
	if (ok == false) {alert(message);return false;}
	else {return true;}
	
}

/****
fonction de verification du formulaire de "Contact"
****/
function verif_form_contact_remiseversion () {
	message = "Les champs suivants doivent être renseignés :\n";
	ok = true;
	var pattern=/^[a-z0-9._-]+@[a-z0-9.-]{2,}[.][a-z]{2,4}$/
	if (document.f_contact.contact_pharmacie.value == '') {
		ok = false;
		message = message + "- Pharmacie\n";
	}
	if (document.f_contact.contact_nom.value == '') {
		ok = false;
		message = message + "- Nom\n";
	}
	if (document.f_contact.contact_codepostal.value == '') {
		ok = false;
		message = message + "- Code postal\n";
	}
	if (document.f_contact.contact_ville.value == '') {
		ok = false;
		message = message + "- Ville\n";
	}
	if (document.f_contact.contact_adresse.value == '') {
		ok = false;
		message = message + "- Adresse\n";
	}
	if (document.f_contact.contact_telephone.value == '') {
		ok = false;
		message = message + "- Telephone\n";
	}
	if (document.f_contact.contact_from.value == '') {
		ok = false;
		message = message + "- Adresse Mail\n";
	}
	if (document.f_contact.contact_from.value != '') {
		if(pattern.exec(document.f_contact.contact_from.value)==null)
		{
			ok = false;
			message = message + "- L'email n'est pas valide\n";
		}
	}
	if (document.f_contact.contact_message.value == '') {
		ok = false;
		message = message + "- Message\n";
	}
	
	if (ok == false) {alert(message);return false;}
	else {return true;}
	
}

