//------------------------------------------------------------------------------------------------
//--------------------------  Initialisation Js (menu principal, SIFR)  --------------------------
//------------------------------------------------------------------------------------------------
function init_js(char_param) {

  //Création du tableau de paramètre
  var tab_param = char_param.split('|');
  var page = tab_param[0];
  //Verif de VersionNav uniquement sur accueil
  if(char_param==1) {
    var test_nav = init_navigateur();
  }

  //Initialiastion du menu enetete et du pied  de page
  init_menus(page);
  init_fermeture();

  switch(page) {
    //-------------------------->Home générale
    case "1" : //accueil" :
      init_tip();
      init_accueil();
      init_img_alea();
      init_sifr("h2.sifr_2", "#e20074");
      init_sifr("h3.sifr_3", "#e2e2e2");
      init_sifr("h3.sifr_ct", "#FFAE00");
      init_sifr("h3.sifr_pro", "#0080FF");
    break;
    
    //---------------------------> Studio
    case "2" :
      init_sifr("h2.sifr_2", "#e20074");
      init_sifr("h3.sifr_3", "#e2e2e2");
      init_studio(tab_param);
      init_tip();
    break;

    case "3" : //galerie" :
      init_galerie(tab_param);         //Init des form de recherches + module tag
      init_sifr("h2.sifr_2", "#e20074");
      //Si on est en mode visualisation
      init_sifr("h3.sifr3_majenta", "#e20074");
    break;

    case "4" : //relations" : 
      init_sifr("h2.sifr_2", "#e20074");
      init_sifr("h3.sifr_3", "#e2e2e2");
      init_sifr("h5 span", "#e20074");
      init_survol();
      init_relations(tab_param);
    break;
    
    //---------------------------> Ressources
    case "5" : //ressources" :
    
      init_sifr("h5", "#e20074");
      init_sifr("h2.sifr_2", "#e20074");
      init_sifr("h3.sifr_3", "#e2e2e2");
      init_ressources(tab_param);
      
    break;
    
    //---------------------------> Espace Perso (accueil)
    case "6" : //espaceperso" :

      //$('#actu').minmax(); 
      init_sifr("h2.sifr_2", "#e20074");
      init_sifr("h3.sifr_3", "#e2e2e2");
      
      init_espace_perso();
    break;   
     
    case "7" : //forum" :
      init_sifr("h2.sifr_2", "#e20074");
      init_sifr("h3.sifr_3", "#e2e2e2");
      init_forum(tab_param);
    break;
    
    case "8" : //contact" :
      init_sifr("h2.sifr_2", "#e20074");
      init_contact();
    break;
    
    case "9" : //faq" :
    case "10" : //mentions légales" :
    case "11" : //partenaires" :
    case "12" : //presse" :
    case "16" : //compatibilité" :
    case "18" : //mentions légales pied" :
    case "19" : //partenaires
       init_sifr("h2.sifr_2", "#e20074");
       init_sifr("h3.sifr_3", "#e2e2e2");
    break;
    
    case "17" : //contact" :
       init_contact();
       init_sifr("h2.sifr_2", "#e20074");
       init_sifr("h3.sifr_3", "#e2e2e2");
    break;
    
    case "20" : //Infos > QuickTour
       init_sifr("h2.sifr_2", "#e20074");
       init_sifr("h3.sifr_3", "#e2e2e2");
      var url_fichier = $("#url_fichier").val();
      var lang_player = $("#lang_player").val();
      
     
        //----------------- Initialisation du QuickTour
        $("a.media").media({width: "100%", 
                            height: "600px", 
                            autoplay: true,
                            bgColor:  '#333333',
                            params: { allowFullScreen: 'true' } ,
                            flashvars: {langue : lang_player, url_fichier : url_fichier } 
                          }); 
    break;
    
    case "14" : //inscr_action" :
      init_inscr_action(tab_param);
    break;
    
    case "13" : //inscription" :
       init_inscription();
    break;
    
    case "21" :
       init_sifr("h2.sifr_2", "#e20074");
    break;
  }
}

function init_navigateur()  {

  //Détection du navigateur
  var version = "";
  var navigateur = "";
  
  $.each(jQuery.browser, function(i, val) {
    if(val==true) {
      navigateur = i;
    }
    if(i=="version") {
      version = val;
    }
  });
  
  //Présence du flash player
  if (!detection_flash() ){ 
    window.location.href="index.php?p=16&r=2";
  }
  
  //Action selon le navigateur
  switch(navigateur)  {
    case "mozilla" :
      if(version<2) {
        //alert("oula t'a un vieux mozilla  !! v :"+version);
        window.location.href="index.php?p=16";
        return false;
      }
      //else return true;
    break;
    case "msie" :
      if(version<=6) {
        //alert("oula t'a un vieux IE  !! v :"+version);
        window.location.href="index.php?p=16";
        return false;
      }
      //else return true;
    break;
    case "safari" :
      if(version<312) {
        //alert("oula t'a un vieux safari !! v :"+version);
        window.location.href="index.php?p=16";
        return false;
      }
      //else return true;
    break;
  }
  //Détection de la résolution du client
  var largeur =  $(window).width();// window.innerWidth; //screen.width;
  var hauteur = $(window).height();//window.innerHeight; //screen.height;
    //alert("navigateur> "+navigateur+" version>  "+version);
  //On envoie ces dimensions pour stocker sur la session

  //on renseigne au php  les infos de l'uutilisateur (dimensions et version de navigateur)
  var param = 'param={"fct": "set_param_js_ajx", "tab_param" : ["'+largeur+'","'+hauteur+'" , +"'+navigateur+'" , +"'+version+'" ] }';
  $.ajax({ 
      type: "GET",
      url: "ctrl_commun.php",
      data: param,
      dataType : 'json',
      success: function(data) {
        switch(data.etat) {
          case "1" :
          default :
            return true;
          break;
        }
      }
    });

    return true;
}

//------------------------------------------------------------------------------------------------
//---------------------------  Initialisation de la fermeture (inactif)  -------------------------
//------------------------------------------------------------------------------------------------
function init_fermeture() {
//  $(window).unload( function () { alert("quit!"); } );
}
//------------------------------------------------------------------------------------------------
//------------------------------  Initialisation des infoBulles  ---------------------------------
//------------------------------------------------------------------------------------------------
function init_tip(px_left) {
  
  var val_left = 15;
  
  if(px_left != "")  val_left = px_left; 
  
  $('.info_bulle').tooltip({ 
      track: true, 
      delay: 0, 
      showURL: false, 
      showBody: " - ",
      extraClass: "right" ,
      left : val_left
  });
}

function init_tip_fixe() {

  $('.info_bulle_fixe').tooltip({ 
      track: false,
      delay: 0,
      showBody: " - ",
      showURL: false,
      top : -10,
      left : 0
  });
}
//------------------------------------------------------------------------------------------------
//------------------------------  Initialisation des menu survol  --------------------------------
//------------------------------------------------------------------------------------------------
function init_survol() {
  $("#droite ul li").mouseover(function()  {
    if(($("a",this).hasClass("desactive")==false) && ($(this).hasClass("desactive")==false)) {
      $(this).css("backgroundColor","#666666");
    }
  });
  $("#droite ul li").mouseout(function(){
     if(($("a",this).hasClass("desactive")==false) && ($(this).hasClass("desactive")==false)) {
      $(this).css("backgroundColor","#333333");
    }
  }); 
}

//------------------------------------------------------------------------------------------------
//------------------------------  Initialisation des menu survol  --------------------------------
//------------------------------------------------------------------------------------------------
function init_survol_visible() {

/*
  $('div.blc_diffusion ul').Tooltip({
  	track: true,
  	delay: 0,
  	showBody: " - ",
  	top : -15
  });
  */
  //Info bulle fixe
  //$(".info_bulle_fixe").click(function()  {
   
    $(".info_bulle_aide").tooltip({ 
      track: false,
      delay: 0,
      showBody: " - ",
      showURL: false,
      top : -10,
      left : 15
    });
 // });

}

//------------------------------------------------------------------------------------------------
//-----------------------   Initialisation des menu entete et pied de page   ---------------------
//------------------------------------------------------------------------------------------------
function init_menus(page) {
//alert("page> "+page);
  $("#entete ul li a[class!='lang_fr'][class!='fr_select'][class!='lang_en'][class!='en_select']").hover(
    function() {
      var id_onglet = $(this).attr("id");
      var morceau = id_onglet.split( "_" );
      //alert("morceau> "+morceau);
      if(page!=morceau[1])  {
        $("img", this).hide();
      }
    },
    function() {
      var id_onglet = $(this).attr("id");
      var morceau = id_onglet.split( "_" );
      if(page!=morceau[1])  {
        $("img", this).show();
      }
    }
  );
  
  //Initialisation du pied
  if(page!="accueil") {
    $("#menu_pied li a").hover(
    function() {
      var id_onglet = $(this).attr("id");
      var morceau = id_onglet.split( "_" );
      if(page!=morceau[1])  {
        $("img", this).hide();
      }
    },
    function() {
      var id_onglet = $(this).attr("id");
      var morceau = id_onglet.split( "_" );
      if(page!=morceau[1])  {
        $("img", this).show();
      }
    });   
  }
}

//------------------------------------------------------------------------------------------------
//-------------------------   Initialisation de l'éditeur de texte  ------------------------------
//------------------------------------------------------------------------------------------------
function init_editeur_texte(lang)  { //lang

  tinyMCE.init({
  	mode : "textareas",
  	theme : "naaow",
  	editor_selector : "texta_editeur",
  	plugins : "paste",
    language : lang,
    theme_advanced_buttons1 : "bold,italic,underline,|,outdent,indent,|,justifyleft,justifycenter,styleselect,|,bullist,numlist,|,link,unlink", //,|,image
  	theme_advanced_buttons2 : "",
  	theme_advanced_buttons3 : "",
    theme_advanced_toolbar_location : "top",
    content_css : "css/style_editeur_naaow2.css",
    paste_auto_cleanup_on_paste : true,
    theme_advanced_resizing_use_cookie : false

  });
}

//------------------------------------------------------------------------------------------------
//-------------------------   Initialisation des images aléatoires  ------------------------------
//------------------------------------------------------------------------------------------------
function init_img_alea()  {
  $(".survol_contrib ul li").mouseover(function() {
      $(this).addClass("bordures_survol");
  });
  $(".survol_contrib ul li").mouseout(function() {
      $(this).removeClass("bordures_survol");
  });
}

//------------------------------------------------------------------------------------------------
//----------------------------------   Détection du flash player  --------------------------------
//------------------------------------------------------------------------------------------------
function detection_flash()  {
  if( navigator.mimeTypes.length > 0 )  {
	 return navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin != null;
	}
	else if( window.ActiveXObject )  {
		try {
			new ActiveXObject( "ShockwaveFlash.ShockwaveFlash" );
			return true;
		}
		catch( oError ) {
			return false;
		}
	}
	else {
		return false;
	}
}
//------------------------------------------------------------------------------------------------
//----------------------   Désactivation ou non des liens de navigation  ------------------------------
//------------------------------------------------------------------------------------------------
//Par defaut, les liens sont toujours actifs
lien_actif = true;
function desactiver_navigation(action)  {
  lien_actif = false;
  control_navigation(action);
}

function activer_navigation(action)  {
  lien_actif = true;
  control_navigation(action);
}
//Control la navigation selon "lien_actif"
function control_navigation(action) {  
  //Selon le cas on détermine les zone qui ont été désactivées
  switch(action)  {
    //Ajout de créa, on désactive le mun haut, le menu studio, le pied et le lien vers citia
    case "ajout_crea" :
    
      $("#entete a, #entete_2 a, #menu_studio_edition a, #pied a, #lien_citia").click(function()  {
        
        if(lien_actif) {
           return true;
        }
        else  {
         confirmer_navigation(this, action);
         return false;
        }
      });
      $("#pied input").click(function()  {  
        if(lien_actif) {
          return true;
        }
        else  {
         confirmer_navigation(this, action);
         return false;
        }
      });
    break;
    //Un autre cas ?
  }
}

//------------------------------------------------------------------------------------------------
//-------------------------   Désactivation des liens de navigation  ------------------------------
//------------------------------------------------------------------------------------------------
function confirmer_navigation(obj_lien, action) {
    var url_lien = $(obj_lien).attr("href");

    $("#recepteur_vide").html("<div id=\"boite_dialogue\"><h4></h4><br /><input type=\"button\" class=\"btn_action\" id=\"bt_dial_oui\" value=\""+cst_bouton_oui+"\" /><input type=\"button\" class=\"btn_action\" id=\"bt_dial_non\" value=\""+cst_bouton_non+"\" /></div>"); 
    
    //Selon le cas on détermine la question à afficher
    switch(action)  {
      case "ajout_crea" :
        $("#boite_dialogue h4").html(cst_confirm_exit_ajout_crea);
      break;
    }
    
    //var question = $("#boite_dialogue")[0]; 
    $.blockUI({ message : $("#boite_dialogue")}); 

    //Selon le cas on détermine l'action à déclencher en cas de "oui" ou de "non" 
    switch(action)  {
    
      case "ajout_crea" :
      
        $("#bt_dial_oui").click(function() {
  
          var param = 'param={"fct": "sup_crea_ajout_ajx", "param" : "'+etape+'" }';
          
          $.ajax({
            type: "GET",
            url: "ctrl_studio.php",
            data : param,
            success: function(data)  {
              $.unblockUI();
              window.location.href=url_lien;
            }
          });
        }); 
        //Sinon on retourne a la page de modif des créations
        $("#bt_dial_non").click($.unblockUI);
      break;
    }
}
//------------------------------------------------------------------------------------------------
//----------------------------------------Fonction AJAX  -----------------------------------------
//------------------------------------------------------------------------------------------------

function fct_ajax(id_div, fonction, loader) {

  if(id_div=="fil_ariane" || id_div=="images" || id_div=="testImage")  {
    $.ajax({
      type: "GET",
      url: "traitement_ajax.php",
      data: "action="+fonction,
      success: function(msg){
        $("#"+id_div).html(msg);
      }
    }); 
  }
  else  {
    $.ajax({
      type: "GET",
      url: "traitement_ajax.php",
      data: "action="+fonction,
      beforeSend : function(){
        //Affichage du loader
        //alert("val_opacite> "+val_opacite);
        $("#"+id_div).fadeTo("fast", 0, function() {
          if(loader=="oui")  {
            $("#"+id_div).html("<img class=\"img_loader\" src=\"interface/loader.gif\" alt=\"\" />").fadeTo("fast", 1);          
          }
        });  
      },
      success: function(msg)  {
        if(loader=="oui")  {
          $("#"+id_div).fadeTo("fast", 0, function() {
            $("#"+id_div).html(msg).fadeTo("fast", 1);
          });
        }
        else  {
          $("#"+id_div).html(msg).fadeTo("fast", 1);
        } 
      }
    });
  }
}

//------------------------------------------------------------------------------------------------
//--------------- Fonction qui vide le champ 'champ' si sa valeur corespond à 'valeur' -----------
//------------------------------------------------------------------------------------------------
function vider(champ, valeur)	{
	if(champ.value==valeur)	{
		champ.value='';
	}
}

//------------------------------------------------------------------------------------------------
//---------------------------- Fonction qui Modifie le cookie de langue --------------------------
//------------------------------------------------------------------------------------------------
function chang_lang(lang)	{
	var expDate = new Date()
	expDate.setTime(expDate.getTime() + (360 * 24 * 3600 * 1000))
        document.cookie = "lang=" + escape(lang)+ ";expires=" + expDate.toGMTString();
        window.location.replace("index.php");
}

//------------------------------------------------------------------------------------------------
//-----------------------Fonction qui redirige vers le line passé en paramètre -------------------
//------------------------------------------------------------------------------------------------
function redirection(url) {
  
  switch(url) {
    case "inscription" :
      window.location.href = "index.php?p=13";
    break;
    default :
      window.location.href = url;
    break;
  }
}

function init_sifr(element, couleur)  {

  $(element).flash({ 
		src: 'swf/jfr.swf',
    expressInstall: true,  
		flashvars: { 
			css: [
				'* { color: '+couleur+'; }',
				'a { color: #e2e2e2; text-decoration: none; }',
				'a:hover { text-decoration: underline; }'
			].join(' ')
		}
	},
	{ version: 7 },

	function(htmlOptions) {
		htmlOptions.flashvars.txt = this.innerHTML;
		this.innerHTML = '<span>'+this.innerHTML+'</span>';
		var $alt = $(this.firstChild);
		htmlOptions.height = $alt.height();
		htmlOptions.width = $alt.width();
		htmlOptions.wmode="transparent";
		$alt.addClass('alt');
		$(this)
			.addClass('flash-replaced')
			.prepend($.fn.flash.transform(htmlOptions));						
	});

}

//------------------------------------------------------------------------------------------------
//------------    Modification de l'etat de sélection (trie des tags))      ----------------------
//------------------------------------------------------------------------------------------------
function activ_selection(class_select, type, id_emetteur_tag) {
  //On isole la première clas de l'element et ensuite le préfix de l'ordre de trie
  var tab_class_select = class_select.split(" ");
  var morceau = tab_class_select[0].split("_");

  obj_select = $("#"+id_emetteur_tag+" ."+morceau[0]);
  
  switch(type)  {
    //Odre d'un résultat de recherche
    case "ordre_rech" :
      var id_list = "#outil_trie2 li a";
    break;
    //Ordre de l'éditeur de tag
    case "ordre_tag" :
      var id_list = "#"+id_emetteur_tag+" .outil_trie ul li a";
    break;
  }
  //On remet a plat tous les lien de l'outil d'ordre recherche ou tag
  $(id_list).each(function() {
    if($(this).hasClass("trie_h_select"))  {
      $(this).removeClass("trie_h_select").addClass("trie_h");
    }
    if($(this).hasClass("trie_b_select"))  {
      $(this).removeClass("trie_b_select").addClass("trie_b");
    }
    if($(this).hasClass("tri_actif"))  {
      $(this).removeClass("tri_actif");
    }
  });
  /*
  //A quoi sert l'outil 3 ?
  $("#outil_trie3 ul li a").each(function() {
    $(this).css("fontWeight","normal").removeClass("lien_fleche_select");
  });
  */
  if(type=="ordre_tag") {
    //On réécrit proporement l'ordre de trie pour affichage transforme "trier" en "trié" 
    var val_trie = obj_select.attr("title");

    if(val_trie.lastIndexOf('trier')!=-1 || val_trie.lastIndexOf('sort')!=-1)  {
      if(val_trie.lastIndexOf('trier')!=-1) {
        var nb_char = 5;
      }
      else  {
        var nb_char = 4;
      }
    }
    //Affichage du mode de trie
    $("#"+id_emetteur_tag+" .affichage_trie").fadeTo("fast", 0, function(){
      $("#"+id_emetteur_tag+" .affichage_trie").html(cst_trie+" "+val_trie.substr(nb_char, val_trie.length));
      $("#"+id_emetteur_tag+" .affichage_trie").fadeTo("slow", 1);
    });
  }
  //On met en évidence le trie slectionné
  switch(tab_class_select[0]) {
    case "alpha" :
    case "date" :
    case "util" :
    case "createur" :
    case "dateajout" :
    case "dateinscription" :
    case "typetrie" :
    case "categorie" :
    case "pays" :
    case "ordrepays":
      obj_select.addClass("tri_actif");
      $("#"+id_emetteur_tag+" ."+tab_class_select[0]+"_asc").removeClass("trie_h").addClass("trie_h_select");
    break;
    
    case "alpha_asc" :
    case "date_asc" :
    case "util_asc" :
    case "createur_asc" :
    case "dateajout_asc" :
    case "dateinscription_asc" :
    case "typetrie_asc" :
    case "categorie_asc" :
    case "pays_asc" :
    case "ordrepays_asc":
      $("#"+id_emetteur_tag+" ."+tab_class_select[0]).removeClass("trie_h").addClass("trie_h_select");
      $("#"+id_emetteur_tag+" ."+morceau[0]).addClass("tri_actif");
    break;
    
    case "alpha_desc" :
    case "date_desc" :
    case "util_desc" :
    case "createur_desc" : 
    case "dateajout_desc" :
    case "dateinscription_desc" :
    case "typetrie_desc" :
    case "categorie_desc" :
    case "pays_desc" :
    case "ordrepays_desc":
      $("#"+id_emetteur_tag+" ."+tab_class_select[0]).removeClass("trie_b").addClass("trie_b_select");
      $("#"+id_emetteur_tag+" ."+morceau[0]).addClass("tri_actif");
    break;
  }
};

//------------------------------------------------------------------------------------------------
//-------------------    Fais clignoter 2 fois l'element d'id "id_elmt"    -----------------------
//------------------------------------------------------------------------------------------------
function clignote(id_elmt, contenu) {
  $("#"+id_elmt).show();
  $("#"+id_elmt).html(contenu).fadeTo("fast", 1, function() {
    $(this).fadeTo("fast", 0.1,function() {
      $(this).fadeTo("fast", 1, function() {
        $(this).fadeTo("fast", 0.1,function() {
          $(this).fadeTo("fast", 1, function() {
            return true;
          });
        });
      });
    });
  });
}
//------------------------------------------------------------------------------------------------
//-------------------    Fais clignoter 2 fois l'element d'id "id_elmt"    -----------------------
//------------------------------------------------------------------------------------------------
function clignote_simple(elmt) {
  $(elmt).show();
  $(elmt).fadeTo("fast", 1, function() {
    $(this).fadeTo("fast", 0.1,function() {
      $(this).fadeTo("fast", 1, function() {
        $(this).fadeTo("fast", 0.1,function() {
          $(this).fadeTo("fast", 1, function() {
            return true;
          });
        });
      });
    });
  });
}
//------------------------------------------------------------------------------------------------
//------    HighLight des input, select et textarea et leur p précédent dans un formulaire  ------
//------------------------------------------------------------------------------------------------
function init_highlight_form()  {

  //-- Highlight des champ input
  $("input[@type=text][class!='highlight_off'],input[@type=password],select[class!='select_date'], textarea").focus(function(){

    $(this).addClass("focus");
    $(this).prev().addClass("coul_important");
    
    if($(this).hasClass("bordure_erreur")) {
    
      $(this).removeClass("bordure_erreur").prev().removeClass("msg_erreur");
    }
  });
  $("input[@type=text][class!='highlight_off'],input[@type=password],select[class!='select_date'], textarea").blur(function() {
    $(this).removeClass("focus");
    $(this).prev().removeClass("coul_important");
  }); 
}
//------------------------------------------------------------------------------------------------
//-------------------------------- Validation générique de pseudo --------------------------------
//------------------------------------------------------------------------------------------------
function init_valide_pseudo(id_a_ecouter, id_sortie, id_control) {

  var get_validation = false;
  var set_validation = false;
  
  //Ecouteur sur le pseudo à chaque touche relevée
 $("#"+id_a_ecouter).keyup(function() {

    if(!get_validation) {
      get_validation = true;
      set_validation = setTimeout(valide_pseudo, 900);
    }
    else {
      clearTimeout(set_validation);
      set_validation = setTimeout(valide_pseudo, 700);
    }
  });

  function valide_pseudo()  {

    var pseudo = $("#"+id_a_ecouter).val();
  
    var param = 'param={"fct": "get_dispo_pseudo_ajx", "param" : "'+pseudo+'" }';
    
    $.ajax({
      type: "GET",
      url: "ctrl_commun.php",
      data : param,
      dataType:  'json', 
      success: function(data_json)  {
      
        if(data_json.etat)  $("#"+id_control).val("oui");
        else $("#"+id_control).val("non");
        
        $("#"+id_sortie).html(data_json.mess_html);
        get_validation = false;
      }
    });
  }
}
//------------------------------------------------------------------------------------------------
//-------------------------------- Validation générique d'email --------------------------------
//------------------------------------------------------------------------------------------------
function init_valide_email(id_a_ecouter, id_sortie, id_control) {

  //Ecouteur sur l'email à chaque touche relevée
  var get_validation = false;
  var set_validation = false;
  
  //Ecouteur sur le pseudo à chaque touche relevée
 $("#"+id_a_ecouter).keyup(function() {

    if(!get_validation) {
      get_validation = true;
      set_validation = setTimeout(valide_email, 900);
    }
    else {
      clearTimeout(set_validation);
      set_validation = setTimeout(valide_email, 700);
    }
  });
  
  function valide_email()  {
    var email = $("#"+id_a_ecouter).val();

    var param = 'param={"fct": "get_dispo_email_ajx", "param" : "'+email+'" }';
    
    $.ajax({
      type: "GET",
      url: "ctrl_commun.php",
      data : param,
      dataType:  'json', 
      success: function(data_json)  {
      
        if(data_json.etat)  $("#"+id_control).val("oui");
        else $("#"+id_control).val("non");
        
        $("#"+id_sortie).html(data_json.mess_html);
        get_validation = false;
      }
    });
  
    //Vérification de conformité entre 1 et 2 mail (modif email)
    if(id_a_ecouter=="nouvel_email" && $("#retaper_email").val() !="" )  {
      verif_identique("nouvel_email", "retaper_email", "sortie_email_2", "retaper_valide");
    }
  }; 
}

//------------------------------------------------------------------------------------------------
//---------------------------- Validation générique de mot de passe ------------------------------
//------------------------------------------------------------------------------------------------ 
function init_valide_mdp(id_mdp_1, id_mdp_2, id_verif_1, id_verif_2, id_control_1, id_control_2) {

  //Ecouteur sur le mdp à la sortie du champ
  $("#"+id_mdp_1).blur(function() {
    valide_mdp();
  }); 
  //Ecouteur sur le mdp à chaque touche relevée
  $("#"+id_mdp_1).keyup(function() {
    valide_mdp();
  });
  
  //Ecouteur sur le mdp sz vérifiacation à la sortie du champ
  $("#"+id_mdp_2).blur(function() {
    valide_mdp2();
  }); 
  //Ecouteur sur le mdp à chaque touche relevée
  $("#"+id_mdp_2).keyup(function() {
    valide_mdp2();
  }); 
  
  function valide_mdp() {
    var lg_mdp = $("#"+id_mdp_1).val();
    
    if(lg_mdp.length>5)  {
      $("#"+id_verif_1).html(cst_mot_de_passe+' '+cst_valide);
      $("#"+id_control_1).val("oui");
    }
    else {
      $("#"+id_verif_1).html(cst_mot_de_passe+' '+cst_court);
      $("#"+id_control_1).val("non");
    }
    //verif_confirm_password
  };

  function valide_mdp2() {

    if($("#"+id_mdp_2).val().length<5)  {
      $("#"+id_verif_2).html(cst_mot_de_passe+' '+cst_court);
      $("#"+id_control_2).val("non");
    }
    else {
      if($("#"+id_mdp_1).val() == $("#"+id_mdp_2).val() )  {
        $("#"+id_verif_2).html(cst_mot_de_passe+' '+cst_valide);
        $("#"+id_control_2).val("oui");
      }
      else {
        $("#"+id_verif_2).html(cst_mot_de_passe+' '+cst_different);
        $("#"+id_control_2).val("non");
      }
    }
  }
}
//------------------------------------------------------------------------------------------------
//-------------------------------- Vérification des 2 champs identiques --------------------------------
//------------------------------------------------------------------------------------------------
//id_chp_1 : id du 1 input à controller, id_chp_2 :id du 2 input à controller, id_sortie: id du message de sortie, id_control :id du input[hidden] de control : oui ou non
function verif_identique(id_chp_1, id_chp_2, id_sortie, id_control)  {
      var chp_1 = $("#"+id_chp_1).val();
      var chp_2 = $("#"+id_chp_2).val();
      
      if(chp_1==chp_2)  {
        $("#"+id_sortie).html(cst_email+' '+cst_valide);
        $("#"+id_control).val("oui");
      }
      else {
        $("#"+id_sortie).html(cst_emails+' '+cst_different);
        $("#"+id_control).val("non");
      }
    }
//------------------------------------------------------------------------------------------------
//-----------------------------------    Class editeur de tag     --------------------------------
//------------------------------------------------------------------------------------------------
/*
//Méthode click_tag : insère les tags cliqués dans le id_recepteur_tag
function click_tag() {

  var id_emetteur_tag = this.id_emetteur_tag;
  var id_recepteur_tag = this.id_recepteur_tag;
  
  $("#"+id_emetteur_tag+" .liste_mots a").click(function()  {
  
    var mot = $(this).text();
    if ($("#"+id_recepteur_tag).val() == "" || $("#"+id_recepteur_tag).val() == cst_aucun_mot_cle)  {
      $("#"+id_recepteur_tag).val(mot);
    }
    else  {
      $("#"+id_recepteur_tag).val($("#"+id_recepteur_tag).val()+", "+mot);
    }
  });

  //Click dans la zone des tags
  $("#"+id_recepteur_tag).focus(function()  {
     if ($(this).val() =="no tag registered" || $(this).val() =="aucun tag enregistré")  {
      $("#"+id_recepteur_tag).empty();
    }
  });
}

//Méthode ordre_tag : active le tri des tags
function ordre_tag() {

  var obj_editeur = this;
  var id_emetteur_tag = this.id_emetteur_tag;
  var id_recepteur_tag = this.id_recepteur_tag;
  var langue = this.langue;

  $("#"+id_emetteur_tag+" .outil_trie ul li a").click(function() { 
 
    var class_trie = $(this).attr("class");
    var tab_class_trie = class_trie.split(" ");
    
    var type_tag = $("#type_tag").text();
    var langue_tag = $("#langue_tag").text();
    $("#ordre_tag").text(tab_class_trie[0]);
    
    //On met à jour l'ordre d'affichage des tags
    var param = 'param={"fct": "maj_ordre_tags_ajx", "param" : [ "'+type_tag+'",  "'+langue_tag+'", "'+tab_class_trie[0]+'" ] }';
    $.ajax({
      type: "GET",
      url: "ctrl_commun.php",
      data: param,
      dataType : 'json', 
      beforeSend : function() {
        $("#"+id_emetteur_tag).block({ message : "<h4>"+cst_traitement+"</h4>"}); 
      },
      success: function(data_json)  {

        $("#"+id_emetteur_tag+" .liste_mots").html(data_json.liste_tag);
        $("#"+id_emetteur_tag+" .outil_trie").html(data_json.ordre_tag);
        $("#"+id_emetteur_tag+" .nav_page_tag").html(data_json.nav_tag);
        
        obj_editeur.click();
        obj_editeur.ordre();
        obj_editeur.limite();
        
        $("#"+id_emetteur_tag).unblock(); 
      }
    }); 
  }); 
} 

//Méthode limite_tag : modifie la page courante des tags
function limite_tag() {

  var obj_editeur = this;
  var id_emetteur_tag = this.id_emetteur_tag;
  
  $("#"+id_emetteur_tag+" .nav_page_tag a").click(function() {
  
    var nb_lim = $(this).attr("id").split( "_" );
    var type_tag = $("#type_tag").text();
    var langue_tag = $("#langue_tag").text();
    var ordre_tag = $("#ordre_tag").text();
  
    var param = 'param={"fct": "maj_limites_tags_ajx", "param" : [ "'+type_tag+'",  "'+langue_tag+'", "'+ordre_tag+'", "'+nb_lim[1]+'" ] }';
    $.ajax({
      type: "GET",
      url: "ctrl_commun.php",
      data: param,
      dataType : 'json', 
      beforeSend : function() {
        $("#"+id_emetteur_tag).block({ message : "<h4>"+cst_traitement+"</h4>"}); 
      },
      success: function(data_json){
        $("#"+id_emetteur_tag+" .liste_mots").html(data_json.liste_tag);
        $("#"+id_emetteur_tag+" .nav_page_tag").html(data_json.nav_tag);
        
        obj_editeur.click();
        obj_editeur.limite();
        
        $("#"+id_emetteur_tag).unblock(); 
      }
    });
  });
};

//Méthode recherche_tag : recherche un tag commencant par les lettre entré dan le input
function recherche_tag()  {

  var obj_editeur = this;
  var id_emetteur_tag = this.id_emetteur_tag;
  var str_tag = "";
  
  var input_rech = "#"+obj_editeur.id_emetteur_tag+" .recherche_tag";
  //Ecouteur sur l'email à chaque touche relevée
  var get_recherche = false;
  var set_recherche = false;
  
  //Ecouteur sur le champ input
 $(input_rech).keyup(function() {

    str_tag = $(this).val();
    
    if(str_tag != cst_gal_lettre_rech)  {
    
      if(!get_recherche) {
        get_recherche = true;
        set_recherche = setTimeout(recherch_tag_ajx, 900);
      }
      else {
        clearTimeout(set_recherche);
        set_recherche = setTimeout(recherch_tag_ajx, 700);
      }
    }
  });  
     
  //On vide la recherche si on a la valeur initiale
  $(input_rech).focus( function() {
  
    str_tag = $(this).val();
    
  	if(str_tag == cst_gal_lettre_rech)	{
  		$(input_rech).val("");
  	}
  }); 
  //sous fonction de recherche du tag
  function recherch_tag_ajx() {

    var type_tag = $("#type_tag").text();
    var langue_tag = $("#langue_tag").text();
    var ordre_tag = $("#ordre_tag").text();
  
    var param = 'param={"fct": "maj_rech_tags_ajx", "param" : [ "'+type_tag+'",  "'+langue_tag+'", "'+ordre_tag+'", "'+str_tag+'" ] }';
    $.ajax({
      type: "GET",
      url: "ctrl_commun.php",
      data: param,
      dataType : 'json', 
      beforeSend : function() {
        $("#"+id_emetteur_tag).block({ message : "<h4>"+cst_traitement+"</h4>"}); 
      },
      success: function(data_json){
        $("#"+id_emetteur_tag+" .liste_mots").html(data_json.liste_tag);
        $("#"+id_emetteur_tag+" .nav_page_tag").html(data_json.nav_tag);
        
        obj_editeur.click();
        obj_editeur.limite();
        
        $("#"+id_emetteur_tag).unblock(); 
      }
    });
  }
}

// Constructeur de l'objet Editeur_tag
function Editeur_tag(id_emetteur_tag, id_recepteur_tag, langue) {
  // Definition des propriétés
  this.id_emetteur_tag = id_emetteur_tag;
  this.id_recepteur_tag = id_recepteur_tag ;	
  this.langue=langue;
  
  //Définition des méthodes		
  this.click = click_tag;
  this.ordre = ordre_tag;
  this.limite = limite_tag;
  this.recherche = recherche_tag
  //this.affichage = affichage_tag;
  
  //Vide le champ si aucun mot clé est à l'interieur
  $("#"+this.id_recepteur_tag).click(function()  {
    if($(this).text()==cst_aucun_mot_cle ) {
      $(this).empty();
    }
  });
}
*/
//------------------------------------> Découpe le ou les paramètres après le #
function get_ancre() {

  var ancre = document.location.hash;
  //Si on a une ancre
  if(ancre.length > 0 ) {
  
    //Si l'ancre comporte plusieurs paramètres
    if(ancre.indexOf("-",0) !=-1 ) {
    
      var reg = new RegExp("[-]+", "g");
      return ancre.split(reg);
      
    }
    //Param unique
    else return ancre.substring(1,ancre.length);
  }

  else return false;
}



//Récupère les bonnes dimensions pour afficher la création
function get_dimensions_visionneuse( li , hi ) {

	var ls = $("body").width();
	var hs = $("body").height();
	
	var tab_dim = new Array();
	
	//Si largeur image est plus grande que largeur fenetre ou que hauteur image plus grande que hauteur fenetre
	if (li>ls || hi>hs) {
		if (li>hi) {
			sens = "paysage";
		}
		else {
      sens = "portrait";
    }
		
		//Selon le sens on redimensionne    
		switch (sens) {
			case "paysage" :
				//ratio 
				var ratio_img = li/hi;
				var ratio_screen = ls/hs;
				
				if (ratio_screen<ratio_img) {
					
					var w_container = Math.min(ls, li);
					var h_container = Math.min(ls, li)/ratio_img;
				} 
        else {
					
					var h_container = hs;
					var w_container = Math.min(hs, hi)*ratio_img;
				}
				break;

			case "portrait" :
				//ratio 
				var ratio_img = hi/li;
				var ratio_screen = hs/ls;
				
				if (ratio_screen<ratio_img) {
					var h_container = hs;
					var w_container = hs/ratio_img;
				} 
        else {
					var w_container = ls;
					var h_container = ls*ratio_img;
				}
				break;
		}
		tab_dim.push(w_container, h_container);
	}
	else {
	  //alert("ls> "+ls+" >> hs> "+hs);
    tab_dim.push(ls, hs);
  }
  
  return tab_dim;
}

//Initialisation d'un accordéon sans animation
function init_acco(id_liste, id_actif, class_titre) {
  $(id_liste+" li ul").hide();
  
  $(id_liste+" li"+id_actif+" ul").show().addClass("acco_actif");
  
  $(id_liste+" li p"+class_titre).click(function() {
  
    $(id_liste+" li ul.acco_actif").hide();
    $(this).next().show().addClass("acco_actif");
    
  });
  
}

//Ajuste la hauteur du deuxième élement si le premier est plus grand
function init_hauteur(id_ref, id_cible) {

  var h_ref = $("#"+id_ref).css("height");
  var h_cible = $("#"+id_cible).css("height");
  
  if(h_ref > h_cible) {
    $("#"+id_cible).css("height", h_ref);
  }
}
//Fonction in_array JS
Array.prototype.in_array = function(p_val) {
  for(var i = 0, l = this.length; i < l; i++) {
    if(this[i] == p_val) return true;
  }
  return false;
}
