// JavaScript Document

//Test anti recharge de background
try {
  document.execCommand("BackgroundImageCache", false, true);
} catch(err) {}
//on cree objet XHR.
function newXHR() {
        var xhr;
        if(window.XMLHttpRequest) xhr = new XMLHttpRequest();
        else if(window.ActiveXObject) {
                try {
                        xhr = new ActiveXObject("Msxml2.XMLHTTP");
        } catch(e) {
                xhr = new ActiveXObject("Microsoft.XMLHTTP");
                }
        } else xhr = false;
        return xhr;
}

//fonction qui envoie la requette de la page sans la recharger

function envoieRequete(url,id) 
{ 
	
    var position = id; 
	var load_screen = '<div style="text-align: center; background:#ffffff; padding:10px; color:#42a62a;  margin:0 auto;"><img src="js/loader.gif"/></div>';
    xhr_object = newXHR();
    xhr_object.onreadystatechange = function() {
		var response=null; //la reponse
               

  
    // On ouvre la requete vers la page d�sir�e 
    xhr_object.open("GET", url, true); 
    xhr_object.onreadystatechange = function(){ 
    if ( xhr_object.readyState == 4 ) 
    	 
		response = xhr_object.responseText;
       	else response = load_screen; // sinon ecran de chargement dans le conteneur
        // j'affiche dans la DIV sp�cifi�es le contenu retourn� par le fichier 
        document.getElementById(position).innerHTML = response; 
    } 
     // dans le cas du get 
    xhr_object.send(null); 
  }
} 
//ensuite on utilise Jquery pour appliquer la fonction a tous les liens
$(document).ready(function(){
        //Application du chargement ajax simple sur tous les liens se trouvant dans le conteneur "menu"
        $("a").click(function(){
                envoieRequete(this.href,'page');return true;
                //return false;
        });
});

//precharger les images css
$(document).ready(function(){
  $.preloadCssImages();
}); 

//le menu accordeon
ddaccordion.init({
	headerclass: "headerbar", //Shared CSS class name of headers group
	contentclass: "submenu", //Shared CSS class name of contents group
	revealtype: "mouseover", //Reveal content when user clicks or onmouseover the header? Valid value: "click" or "mouseover
	mouseoverdelay: 200, //if revealtype="mouseover", set delay in milliseconds before header expands onMouseover
	collapseprev: true, //Collapse previous content (so only one open at any time)? true/false
	defaultexpanded: [0], //index of content(s) open by default [index1, index2, etc] [] denotes no content
	onemustopen: true, //Specify whether at least one header should be open always (so never all headers closed)
	animatedefault: true, //Should contents open by default be animated into view?
	persiststate: true, //persist state of opened contents within browser session?
	toggleclass: ["", "selected"], //Two CSS classes to be applied to the header when it's collapsed and expanded, respectively ["class1", "class2"]
	togglehtml: ["", "", ""], //Additional HTML added to the header when it's collapsed and expanded, respectively  ["position", "html1", "html2"] (see docs)
	animatespeed: "fast", //speed of animation: integer in milliseconds (ie: 200), or keywords "fast", "normal", or "slow"
	oninit:function(headers, expandedindices){ //custom code to run when headers have initalized
		//do nothing
	},
	onopenclose:function(header, index, state, isuseractivated){ //custom code to run whenever a header is opened or closed
		//do nothing
	}
})


//cacher/montrer le menu
$(document).ready(function(){

	$(".menu_cache").mouseover(function(){
      $("#menu_cache").animate({
      "width": "toggle"
    }, { duration: "slow" });
	  $(this).toggleClass("active");
    });


});
//proteger les emails
$(document).ready(function(){//on attend que la page soit charg�e
        //Pour tous les liens commen�ant par "mailto" ou les span ayant une class "wmail"
        $('a[href^="mailto"], span.wmail').each(function (i) {
                //Remplacment du texte dans l'�l�ment
                var temp = $(this).html();
                temp = temp.replace("[at]","@");
                temp = temp.replace("[p]",".");
                $(this).html(temp);
                //Si il y a un attribut "href", on remplace le texte dans l'attribut
                if($(this).attr("href")){
                        var temphref = $(this).attr("href");
                        temphref = temphref.replace("[at]","@");
                        temphref = temphref.replace("[p]",".");
                        $(this).attr("href",temphref);
                }
        })
});

// Fonction de stockage des scripts � charger pour eviter les conflits de windows onload
FuncOL = new Array();
function StkFunc(Obj) {
	FuncOL[FuncOL.length] = Obj;
}
	
// Execution des scripts au chargement de la page
window.onload = function() {
	for(i=0; i<FuncOL.length; i++)
		{FuncOL[i]();}
} 

function open_ext_link()
{
	var liens = document.getElementsByTagName('a');
	// On r�cup�re tous les liens (<a>) du document dans une variable (un array), ici liens.
	// Une boucle qui parcourt le tableau (array) liens du d�but � la fin.
	for (var i = 0 ; i < liens.length ; ++i)  {
		// Si les liens ont un nom de class �gal � lien_ext, alors on agit.
		if (liens[i].className == 'lien_ext')  {
			liens[i].title = "Ouvrir une nouvelle page";
			// Au clique de la souris.
			liens[i].onclick = function()  {
				window.open(this.href);
				return false; // On ouvre une nouvelle page ayant pour URL le href du lien cliqu� et on inhibe le lien r�el.
			};
		}
	}
}
// Au chargement de la page, on appelle la fonction.
StkFunc(open_ext_link);


/* Fonction chargement ajax avec animation,
 * vous pouvez modifier la vitesse (slow, fast, 1500, ...)
 * et l'effet (slideUp, fadeOut, ...) */
function ajax_page_advanced(ele,msg,url){
        $(ele).slideUp("slow", function(){
                $(ele).html(msg).show("slow", function(){
                        $(ele).load(url+" "+ele, null, function(){
                                var tampon = $(ele).html();
                                $(ele).html(msg).hide("slow",function(){
                                        $(ele).html(tampon);
                                        $(ele).slideDown("slow");
                                });
                        });
                });
        });
}

/* Fonction de chargement ajax simple */
function ajax_page(ele,msg,url){
        $(ele).html(msg).load(url+" "+ele);
}

/* Une fois la page charg�e  on applique la fonction de rechargement*/
/*$(document).ready(function(){
        //Application du chargement ajax simple sur tous les liens se trouvant dans le conteneur "menu"
        $("a").click(function(){
                ajax_page_advanced('#contenu','<div style="text-align: center; background:#ffffff; padding:10px; color:#42a62a;  margin:0 auto;"><img src="js/loader.gif"/></div>',this.href);
                return false;
        });
});
*/
//effet de menu transition fade entre les deux parties de l'image
$(document).ready(function(){
$('#menu_cache ul li a')
	.css( {backgroundPosition: "0 0"} )
		.mouseover(function(){
			$(this).stop().animate({backgroundPosition:"(-185px 0)"}, {duration:500})
		})
		.mouseout(function(){
			$(this).stop().animate({backgroundPosition:"(-350px 0)"}, {duration:200, complete:function(){
				$(this).css({backgroundPosition: "0 0"})
			}})
		})

});






/*****************************************recherche autosuggest*********************************/
//onkeyup non intrusif
$(document).ready(function(){
	$(".recherche").keyup(function(){
			autosuggest();
			});
} ) ;
function autosuggest() {
biba = document.getElementById('biba').value;
lang = document.getElementById('lang').value;
// Set te random number to add to URL request

		if(biba.length == 0) {
			// Hide the suggestion box.
			$('#results').hide();
		} else {
			$.post("../web/biba.php", {biba: ""+biba+"",gbe: ""+lang+""}, function(data){
				if(data.length >0) {
					$('#results').show();
					$('#results').html(data);
				}
			});
		}
	}
	
/****************autocompletition pour les country du formulaire de recherche****************************************/
//onkeyup non intrusif
$(document).ready(function(){
	$("#pays").keyup(function(){
			lookup(this.value);
			});
} ) ;
$(document).ready(function(){
	$("#pays").blur(function(){
			fill();
			});
} ) ;

function lookup(inputString) {
		if(inputString.length == 0) {
			// Hide the suggestion box.
			$('#suggestions').hide();
		} else {
			$.post("../web/to.php", {queryString: ""+inputString+""}, function(data){
				if(data.length >0) {
					$('#suggestions').show();
					$('#autoSuggestionsList').html(data);
				}
			});
		}
	} // lookup
	
function charge(thisValue) {
		$('#pays').val(thisValue);
		setTimeout("$('#suggestions').hide();", 200);
	}




/*******************valeur par defaut du formulaire de recherche***********************/
(function($) {
$.fn.defaultvalue = function() {
// Scope
var elements = this;
var args = arguments;
var c = 0;
return(
elements.each(function() {				
// Default values within scope
var el = $(this);
var def = args[c++];
el.val(def).focus(function() {
if(el.val() == def) {
el.val("");
}el.blur(function() {if(el.val() == "") {el.val(def);
}});});}));}})(jQuery)
//
$(document).ready( function () {
lang = document.getElementById("lang").value;
//alert(lang);
if(lang == 1){
$(".recherche").defaultvalue("Rechercher");
}else
if(lang == 2){
$(".recherche").defaultvalue("Search");
}
});