function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
/*
// verifie la validite d'un email
function validemail(champ)
{
	
	
	var email = document.getElementById(champ);
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(email.value)) 
	{
	 	alert(get_trad_champ("email"));
		email.focus
		return false;
	}
	else
	{
		return true;
	}
}

// verifie les champs obligatoire d'un formulaire
valider_formulaire = function () {
	var tab = valider_formulaire.arguments;

	taille = tab.length;

	for (i=0;i<taille;i++) {
		if (tab[i]=="email") {
			if (!validemail(tab[i])) {
				return 0; 
			}
		}else{
			if ((document.formulaire.elements[tab[i]].value.trim()=="") || (document.formulaire.elements[tab[i]].value.trim()==" ")) {
				str_temp = tab[i].replace(/_/g," ");
				alert(get_trad_champ(str_temp));
				return 0; 
			}
		}
	}
	
	document.formulaire.submit();
}
*/
/* Fonctions génériques de validation de formulaire */
// Verifie la validite d'un email
function valide_mail_generique ( nameForm, champ ) {
	
	var email = document.forms[nameForm].elements[champ];
		
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	
	if ( !filter.test(email.value) ) {
		
	 	alert(get_trad_champ("email"));
		email.select();
		return false;
	}
	else {
		return true;
	}
}


// Verifie les champs obligatoire d'un formulaire
valider_formulaire_generique = function () {
	var tab = valider_formulaire_generique.arguments;

	taille = tab.length;

	if ( taille > 0 ) {

		nameForm = tab[0];
		
		for ( i = 1; i < taille; i++ ) {
			
			if ( tab[i] == "email" ) {
				if ( !valide_mail_generique( nameForm, tab[i] ) ) {
					return false; 
				}
			}
			else {
				if ( ( document.forms[nameForm].elements[tab[i]].value.trim() == "" ) ) {				
					alert ( get_trad_champ( tab[i] ) );				
					document.forms[nameForm].elements[tab[i]].select();
					return false; 
				}
			}
		}
		
		return true;
		
	}
	else {
		return false;
	}
}

/*
// Exemple d'appel
function validForm() {
	if ( valider_formulaire_generique('nom_du_formulaire', 'champ_1', 'champ_2' ... ) ) {				
		document.forms['nom_du_formulaire'].submit();					
	}
	else {
		return false;
	}		
}
*/

function empechechar()
{
	if( event.keyCode < 48 || event.keyCode > 57 )
 	{ 
 		alert(get_trad_champ("numeric") );
   		event.returnValue = false;
   	}
}

// fonction qui fait apparaitre le sablier sur soumission de formulaire un peu long..

// Variable témoin de la validation effectuée ou pas
var deja = 0;

function valider(nom_form) {
	// Si on n'a pas déjà validé
	
	if ( deja == 0 ) {

		// On marque qu'on valide
		deja = 1;
					
		// On affecte le style 'sablier' au corps de la page
		document.body.className = 'sablier';
		
		// On lance la soumission du formulaire
		eval('document.'+nom_form+'.submit()');
	} /*else {
		alert('Le formulaire est déjà validé, veuillez patienter.'); */
}

function show_sablier()
{
	document.body.className = 'sablier';
}


// verifie les champs obligatoire d'un formulaire
verif_formulaire_nom = function () {
	var tab = verif_formulaire_nom.arguments;
	var nom_form = "formulaire";
	
	taille = tab.length;

	if (taille>0)
	{
		nom_form = tab[0];
	}	

	for (i=1;i<taille;i++) {
		if (tab[i]=="email") {
			if (!validemail(tab[i])) {
				return 0; 
			}
		}else{
	
			if ((document.getElementById(tab[i]).value.trim()=="")  || (document.getElementById(tab[i]).value.trim()==" ")) {
				//str_temp = tab[i].replace(/_/g," ");
				str_temp = tab[i];
				alert(get_trad_champ(str_temp));
				return 0; 
			}
		}
	}
	
	return true
}

String.prototype.trim = function() {

        return this.replace(/^\s+|\s+$/g,"");

}

function isValidDate ( _fieldId )
{
    if ( _fieldId == "" )
        return true;

    // Récupération de la valeur
    var totalDate    = document.getElementById( _fieldId ).value;
    if ( totalDate == "" )
        return false;
   
    // Découpage de la date récupérée
    var aDate = totalDate.split( "/" );
    if ( aDate.length != 3 )
        return false;

    // Création d'un objet date
    var generatedDate = new Date ( aDate[ 2 ], aDate[ 1 ] - 1, aDate[ 0 ] );
   
    // Test
    if (     generatedDate.getFullYear() == aDate[ 2 ]
        &&    generatedDate.getMonth() + 1 == aDate[ 1 ]
        &&    generatedDate.getDate() == aDate[ 0 ] )
        return true;
   
    return false;
}


function changeSearchPage(index)
{  
	document.getElementById("search_page_pagination").value = index;
}

function submitPagination(index)
{
	document.getElementById("page").value=index;
	document.getElementById("paginationForm").submit();
}

// *** Formulaire de contact *** //
function validCaptchaContact(idDemandeRecrutement){
	$.ajax({
		type: "POST",
		data: "captcha="+document.getElementById('strcode').value,
		async: true,
		url:  "ajax/ajax_verif_captcha.php",
		success: function(data){
		
			var tab = data.split("|");	
			var err = 0;
			
			if(tab[1] == "OK"){								
				validFormContact(idDemandeRecrutement);
			}else{
				alert(get_trad_champ('bad_captcha'));		
				document.forms['formContact'].elements['strcode'].select();		
				return false;
			}
		} });
	
}


function getChampRecrutement(idDemandeRecrutement) {
	if ( document.getElementById('theme_demande_contact').value == idDemandeRecrutement ) {
		document.location.href = 'http://www.promeo.fr/formulaire/contact/(type)/2';
		document.getElementById('divRecrutement').style.display = "block";
	}
	else {
		document.getElementById('divRecrutement').style.display = "none";
	}
}

function getExtension(filename) {        
	var parts = filename.split(".");        
	return (parts[(parts.length-1)]);    
}        
// vérifie l'extension d'un fichier uploadé    
// champ : id du champ type file    
// listeExt : liste des extensions autorisées    
function verifFileExtension(champ)    {	
	listeExt=new Array('doc','docx','pdf');
	filename = document.getElementById(champ).value.toLowerCase();	
	fileExt = getExtension(filename);	
	for (i=0; i<listeExt.length; i++)	{		
		if ( fileExt == listeExt[i] ) 		{							
			return true;
		}	
	}		
	return false;     
}

function validFormContact(idDemandeRecrutement) {
	if ( valider_formulaire_generique('formContact', 'theme_demande_contact', 'civilite', 'nom',
																		'prenom', 'adresse', 'code_postal', 'ville', 'pays', 
																		'telephone', 'email' ) ) {				
		if ( document.getElementById('theme_demande_contact').value == idDemandeRecrutement ) {
			if ( valider_formulaire_generique('formContact', 'fonction' ) ) {
				if ( ( verifFileExtension('cv') || document.getElementById('cv').value.toLowerCase() == "" ) &&
						 ( verifFileExtension('lettre_motivation') || document.getElementById('lettre_motivation').value.toLowerCase() == "" ) ) {
					document.forms['formContact'].submit();				
					return true;
				}
				else {
					alert(get_trad_champ("formatincorrect"));
					return false;
				}
			}
			else {
				return false;
			}
		}
		else {			
			document.forms['formContact'].submit();				
			return true;
		}
	}
	else {
		return false;
	}
}
// *** Formulaire de contact *** //

// *** Vos residences en 1 clic *** //
function goToResidence() {	
	urlResidence = document.getElementById('residences').value;		
	if ( urlResidence.trim() != "" ) {
		window.location.href = urlResidence;
	}
}
// *** Vos residences en 1 clic *** //

// *** Moteur de recherche *** //
function getDayForTheMonth() {
	
	$.get("ajax/ajax_get_day_by_month.php", { moisAnnee: document.getElementById('date_month_year_dep').value, jour: document.getElementById('date_day_dep').value }, function(data){    
  $("#date_day_dep").html(data);  
  });
	
}
// *** Moteur de recherche *** //

// *** Newsletter *** //
function validCaptchaNewsletter(){
	$.ajax({
		type: "POST",
		data: "captcha="+document.getElementById('strcode').value,
		async: true,
		url:  "ajax/ajax_verif_captcha.php",
		success: function(data){
		
			var tab = data.split("|");	
			var err = 0;
			
			if(tab[1] == "OK"){								
				validFormNewsletter();
			}else{
				alert(get_trad_champ('bad_captcha'));		
				document.forms['formNewsletter'].elements['strcode'].select();		
				return false;
			}
		} });
	
}

function validFormNewsletter() {
	if ( valider_formulaire_generique('formNewsletter', 'civilite', 'nom',
																		'prenom', 'email' ) ) {					
		document.forms['formNewsletter'].submit();		
	}																		
	else {
		return false;
	}
}
// *** Newsletter *** //

// *** Vos Souvenirs *** //
function validCaptchaVosSouvenirs(){
	$.ajax({
		type: "POST",
		data: "captcha="+document.forms['formVosSouvenirs'].elements['strcode'].value,
		async: true,
		url:  "ajax/ajax_verif_captcha.php",
		success: function(data){	
			var tab = data.split("|");	
			var err = 0;
			
			if(tab[1] == "OK"){								
				validFormVosSouvenirs();
			}else{
				alert(get_trad_champ('bad_captcha'));		
				document.forms['formVosSouvenirs'].elements['strcode'].select();		
				return false;
			}
		} });
	
}

function validFormVosSouvenirs() {
	if ( valider_formulaire_generique('formVosSouvenirs', 'nom',
																		'prenom', 'email', 'url_album' ) ) {					
		document.forms['formVosSouvenirs'].submit();		
	}																		
	else {
		return false;
	}
}
// *** Vos Souvenirs *** //

// *** Vos Avis *** //
function validCaptchaVosAvis(){
	$.ajax({
		type: "POST",
		data: "captcha="+document.forms['formVosAvis'].elements['strcode'].value,
		async: true,
		url:  "ajax/ajax_verif_captcha.php",
		success: function(data){	
			var tab = data.split("|");	
			var err = 0;
			
			if(tab[1] == "OK"){								
				validFormVosAvis();
			}else{
				alert(get_trad_champ('bad_captcha'));		
				document.forms['formVosAvis'].elements['strcode'].select();		
				return false;
			}
		} });
	
}

function validFormVosAvis() {
	if ( valider_formulaire_generique('formVosAvis', 'nom',
																		'prenom', 'email', 'temoignage' ) ) {					
		document.forms['formVosAvis'].submit();		
	}																		
	else {
		return false;
	}
}
// *** Vos Souvenirs *** //

function dernieres_minutes(id)
{
	
	var form = document.getElementById('search_form');
	if(form)
	{
		var tab_input = form.getElementsByTagName('input');
		var i = 0; 
		
		var foundEtab = false;
		var foundStartDate = false;
		var foundNbDays = false;
		var foundNbAdults = false;
		var foundNbEnfants = false;
		var foundThemes = false;
		
		for(i = 0; i < tab_input.length; i++)
		{
			if(tab_input[i].name == 'search_form_etab_list')
			{
				//On charge la liste des etablissements dans search_form
				tab_input[i].value = loadEtablissements(id);
				foundEtab = true;
			}
			
			if(tab_input[i].name == 'search_form_start_date')
			{
				//On charge la liste date de debut dans search_form
				tab_input[i].value = loadStartDate(id);
				tab_input[i].id="";
				foundStartDate = true;
			}
			
			if(tab_input[i].name == 'search_form_nb_days')
			{
				//On charge le nombre de jours dans search_form
				tab_input[i].value = loadNbDays(id);
				foundNbDays = true;
			}
			
			if(tab_input[i].name == 'search_form_nb_adults')
			{
				//On charge le nombre d'adultes dans search_form
				tab_input[i].value = loadNbAdults(id);
				foundNbAdults = true;
			}
			
			if(tab_input[i].name == 'search_form_nb_enfants')
			{
				//On charge le nombre d'enfants dans search_form
				tab_input[i].value = loadNbEnfants(id);
				foundNbEnfants = true;
			}
			
			if(tab_input[i].name.match('search_form_search_themes'))
			{
				//On charge les themes de la recherche dans search_form
				tab_input[i].value = loadThemes(id);
				foundThemes = true;
			}
			
			//desactivation des input mois/annee et jour
			if(tab_input[i].name.match('search_form_month_year_start_date') || tab_input[i].name.match('search_form_day_start_date'))
			{
				//On charge les themes de la recherche dans search_form
				tab_input[i].name += '_disabled';
			}
			
		}
		
		//Si aucun champ etablissement trouve
		if(!foundEtab)
		{
			form.innerHTML += "<input type=\"hidden\" name=\"search_form_etab_list\" value=\""+ loadEtablissements(id) +"\"/>";			
		}
		//Si aucun champ date de debut trouve
		if(!foundStartDate)
		{
			form.innerHTML += "<input type=\"hidden\" name=\"search_form_start_date\" value=\""+ loadStartDate(id) +"\"/>";			
		}
		//Si aucun champ nb de jours trouve
		if(!foundNbDays)
		{
			form.innerHTML += "<input type=\"hidden\" name=\"search_form_nb_days\" value=\""+ loadNbDays(id) +"\"/>";			
		}
		//Si aucun champ nb adultes trouve
		if(!foundNbAdults)
		{
			form.innerHTML += "<input type=\"hidden\" name=\"search_form_nb_adults\" value=\""+ loadNbAdults(id) +"\"/>";			
		}
		//Si aucun champ nb enfants trouve
		if(!foundNbEnfants)
		{
			form.innerHTML += "<input type=\"hidden\" name=\"search_form_nb_enfants\" value=\""+ loadNbEnfants(id) +"\"/>";			
		}
		//Si aucun champ themes trouve
		if(!foundThemes)
		{
			form.innerHTML += "<input type=\"hidden\" name=\"search_form_search_themes\" value=\""+ loadThemes(id) +"\"/>";			
		}
		
		//Desactivation des selectbox
		var tab_select = form.getElementsByTagName('select');
		var i = 0; 
		
		for(i = 0; i < tab_select.length; i++)
		{
			if(tab_select[i].name == 'search_form_month_year_start_date')
			{
				tab_select[i].name += '_disabled';
				tab_select[i].id += '_disabled';
			}
			
			if(tab_select[i].name == 'search_form_day_start_date')
			{
				tab_select[i].name += '_disabled';
				tab_select[i].id += '_disabled';
			}
			
			if(tab_select[i].name == 'search_form_start_date')
			{
				tab_select[i].name += '_disabled';
			}
			
			if(tab_select[i].name == 'search_form_nb_days')
			{
				tab_select[i].name += '_disabled';
			}
			
			if(tab_select[i].name == 'search_form_nb_adults')
			{
				tab_select[i].name += '_disabled';
			}
			
			if(tab_select[i].name == 'search_form_nb_enfants')
			{
				tab_select[i].name += '_disabled';
			}
		}		
	}	
}

function loadEtablissements(id)
{
	if(document.getElementById('etabs_'+id))
	{
		return 	document.getElementById('etabs_'+id).value;
	}
}

function loadThemes(id)
{
	if(document.getElementById('searchThemes_'+id))
	{
		return 	document.getElementById('searchThemes_'+id).value;
	}
}

function loadNbAdults(id)
{
	if(document.getElementById('nbAdults_'+id))
	{
		return 	document.getElementById('nbAdults_'+id).value;
	}
}

function loadNbEnfants(id)
{
	if(document.getElementById('nbEnfants_'+id))
	{
		return 	document.getElementById('nbEnfants_'+id).value;
	}
}


function loadNbDays(id)
{
	if(document.getElementById('nbDays_'+id))
	{
		return 	document.getElementById('nbDays_'+id).value;
	}
}

function loadStartDate(id)
{
	if(document.getElementById('startDate_'+id))
	{
		return 	document.getElementById('startDate_'+id).value;
	}
}
