/***********************************************************************************************
fichier: fonctions.js
auteur : Valérie Robin
date: 07/08/2006

ce fichier contient toutes les fonctions javaScript appelées couramment
************************************************************************************************/

function blink(div_name, blinkCount){
	//.fadeIn(600).fadeOut(600).fadeIn(600);
	do {
	   $('#'+div_name)['fade'+(blinkCount%2==0?'Out':'In')]('slow');
	} while (--blinkCount);
	//$('#'+div_name).effect("pulsate", { times:50 }, 1000);
}

function ajouter_clic_reseau_sociel(chemin, page, nom_reseau){
	file(chemin+'/fonction_ajax.php', 'POST', 'fonction=ajout_clic_reseau_social&page='+page+'&nom_reseau='+nom_reseau);
}

function popup(page,l,h){
      var top=(screen.height-h)/2;
      var left=(screen.width-l)/2;
      fenetre_cr=window.open(page,"Enregistrer","status=no,location=no,scrollbars=yes,toolbar=no,directories=no,resizable=yes,width="+l+",height="+h+",top="+top+",left="+left);
}

function popupbis(page,l,h){
	var top=(screen.height-h)/2;
    var left=(screen.width-l)/2;
    fenetre_cr=window.open(page,"Visualiser","status=no,location=no,scrollbars=yes,toolbar=no,directories=no,resizable=yes,width="+l+",height="+h+",top="+top+",left="+left);
}

function popup_ascenceur(page,l,h){
      var top=(screen.height-h)/2;
      var left=(screen.width-l)/2;
      fenetre_cr=window.open(page,"Enregistrer","status=no,location=no,scrollbars=yes,toolbar=no,directories=no,resizable=yes,width="+l+",height="+h+",top="+top+",left="+left);
}

function verif_mail (mail){ 
var msg = ""; 
//verification du champ mail, du . et du @ 
   if(mail != ""){ 
	   indexArob = mail.indexOf('@'); 
	   indexPoin = mail.indexOf('.'); 
	   if(indexArob<0 ||indexPoin<0){ 
	   		return false;   
	   } 
	   else{
	   	return true;
	   }
   }
   else{ 
     return false;
   } 
}

function nettoyer_chaine(input){
	var ch=input.value;
	ch=ch.replace(/\’/g,'\'');
	input.value=ch;	
}


function enregistrer_mail_newsletter(niveau, id_champ_mail, from){
	resultat=file(niveau+'/enreg_mail.php','POST','mail='+$('#'+id_champ_mail).val());
	if(resultat==3){alert("L'adresse que vous avez indiqué n'est pas une adresse mail valide.");}
	if(resultat==1||resultat==2){
		alert("Votre inscription a bien été prise en compte.\n\nL'équipe Certi'Ferme vous remercie.");
		$('#'+id_champ_mail).val('Votre email');
		window.focus();
		if(from=='popup')$('#popup_pub_certiferme').fadeOut('fast');
		else if(from=='fancybox'){
			//$.fancybox.showActivity();
			$.fancybox("<span style='font-size:14px;color:#FF7B00'>Merci et une bonne visite !</span>");
			setTimeout("$.fancybox.close()", 2500);
		}
	}
	//alert(resultat);
}

/**
 * Javascript trim, ltrim, rtrim
 * Fonctions de suppression des espaces surnuméraires (ou autres caractères)
 * en début et en fin de chaine.
 * trim va faire appel à deux autres méthodes rtrim et ltrim qui éventuellement
 * restent accessibles individuellement.
 *
 * Source :  * http://www.webtoolkit.info/
 *
 * @param   {String}  str       Chaine de caractères à traiter.         OBLIGATOIRE
 * @param   {String}  chars     Chaine à supprimer (par défaut, espace) FACULTATIF
 * @return  {String}
 */
function trim (str, chars){
    return ltrim(rtrim(str, chars), chars);
}

function ltrim (str, chars){
    var car = (chars != undefined) ? chars : "\\s";
    return str.replace(new RegExp("^[" + chars + "]*", "g"), "");
}

function rtrim (str, chars){
    var car = (chars != undefined) ? chars : "\\s";
    return str.replace(new RegExp("[" + chars + "]*$", "g"), "");
}

function animer_pub_cf(){
	setTimeout("$('#popup_pub_certiferme').animate({top: '145px'}, 1000);", 800);
}

function ajouter_aux_favoris() {
	if (navigator.appName != 'Microsoft Internet Explorer'){
		window.sidebar.addPanel("Le village Certi'Ferme","http://www.certiferme.com",""); 
	}else {
		window.external.AddFavorite("http://www.certiferme.com","Le village Certi'Ferme");
	}
} 


function verif_form_ident() {
	var form = document.form_ident;
	var champ_login = document.form_ident.login.value;
	var champ_mdp = document.form_ident.mdp.value;
	var err = 0;
	var error_txt='';
	var resultat='.';
	
	if(champ_login==''){err++; error_txt+='Saisissez votre login.<br />'; form.login.focus();}
	if(champ_mdp==''){err++; error_txt+='Saisissez votre mot de passe.'; form.login.focus();}
	if(champ_login!='' && champ_mdp!=''){
		resultat = file('verif_connexion.php?login='+champ_login+'&mdp='+champ_mdp+'&page=index', 'GET', '');
		if(resultat==0){err++; error_txt+='Cet identifiant n\'existe pas<br />'; form.login.value=''; form.login.focus();}
		if(resultat==-1){err++; error_txt+='Votre mot de passe est erroné<br />'; form.mdp.value=''; form.mdp.focus();}
		if(resultat==-2){err++; error_txt+='Votre compte n\'est pas activé.<br />'; form.login.focus();}
		if(resultat==-3){err++;}
	}
	if(err>0) {
		document.getElementById('div_erreur').innerHTML = error_txt;
		if(resultat==-3){ //La personne est inscrite mais ne possède pas de blog
			//document.location = 'ajout/inscription.php';
			document.getElementById('div_erreur').innerHTML += "<form id='form_sans_blog' action='ajout/inscription.php' method='POST'><input type='hidden' name='login_sans_blog' value='"+form.login.value+"' /></form>";
			document.getElementById('form_sans_blog').submit();
		}else{
			document.getElementById('div_erreur').style.display = 'block';
		}
		return false;
	} else {
		return true;
	}
	
}

function connect_ajax(niveau){
	var form = document.form_ident;
	var champ_login = document.form_ident.login.value;
	var champ_mdp = document.form_ident.mdp.value;
	var err = 0;
	var error_txt='';
	var resultat='.';
	
	if(champ_login==''){err++; error_txt+='Saisissez votre login.<br />'; form.login.focus();}
	if(champ_mdp==''){err++; error_txt+='Saisissez votre mot de passe.'; form.login.focus();}
	if(champ_login!='' && champ_mdp!=''){
		resultat = file(niveau+'/mon_blog/verif_connexion.php?login='+champ_login+'&mdp='+champ_mdp, 'GET', '');
		if(resultat==0){err++; error_txt+='Cet identifiant n\'existe pas<br />'; form.login.value=''; form.login.focus();}
		if(resultat==-1){err++; error_txt+='Votre mot de passe est erroné<br />'; form.mdp.value=''; form.mdp.focus();}
		if(resultat==-2){err++; error_txt+='Votre compte n\'est pas activé.<br />'; form.login.focus();}
		if(resultat==-3){err++;}
	}
	if(err>0) {
		document.getElementById('div_erreur').innerHTML = error_txt;
		document.getElementById('div_erreur').style.display = 'block';
	} else {
		document.getElementById('div_erreur').innerHTML = '';
		document.getElementById('span_login_inscrit').innerHTML = champ_login;
		document.getElementById('formulaire_ident_global').style.display = 'none';
		document.getElementById('div_connexion_inscrit').style.display = 'none';
		document.getElementById('lien_mon_livre_non_connecte').style.display = 'none';
		document.getElementById('lien_mon_livre_connecte').style.display = '';
		document.getElementById('div_presentation_inscrit').style.display = '';
		document.getElementById('div_deconnexion_inscrit').style.display = '';
		
		document.location.href=document.getElementById('lien_mon_livre_connecte').href;
	}
	
}

function deconnect(niveau, type){
	file(niveau+'/destroy.php?t_destroy='+type, 'GET', '');
	document.location.reload();
}

function in_array (needle, haystack, argStrict) {
    // Checks if the given value exists in the array  
    // 
    // version: 911.718
    // discuss at: http://phpjs.org/functions/in_array    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: vlado houba
    // +   input by: Billy
    // +   bugfixed by: Brett Zamir (http://brett-zamir.me)
    // *     example 1: in_array('van', ['Kevin', 'van', 'Zonneveld']);    // *     returns 1: true
    // *     example 2: in_array('vlado', {0: 'Kevin', vlado: 'van', 1: 'Zonneveld'});
    // *     returns 2: false
    // *     example 3: in_array(1, ['1', '2', '3']);
    // *     returns 3: true    // *     example 3: in_array(1, ['1', '2', '3'], false);
    // *     returns 3: true
    // *     example 4: in_array(1, ['1', '2', '3'], true);
    // *     returns 4: false
    var key = '', strict = !!argStrict; 
    if (strict) {
        for (key in haystack) {
            if (haystack[key] === needle) { return true; }
        }
    } else {
        for (key in haystack) {
            if (haystack[key] == needle) { return true; }
        }
    }
     return false;
}