/* 	Menu
	Auteur : Hervé FRACKOWIAK
	Date : 03/05/2009
*/

//Au chargement de la page
$(document).ready(function(){
	
	//On cache les menus
	$("#navigation .sousMenu").hide();
	
	//Bind des menus
	$("#navigation ul li.menu").bind("mouseover", function(){survolMenu($(this))});
	
	//survol des menus
	function survolMenu(el) {
		
		//Unbind mouseover
		$("#navigation ul li.menu").unbind("mouseover");
		
		//Calque de sortie
		$("#searchNav").prepend('<div id="modal_sortie"><img src="'+ PATHRES +'/fr_FR/img/00_common/1ptrans.gif" border="0" alt=""></div>');
		//On recupere les coordonn�es de la div parente
		var posSearchNav = $("#searchNav").offset();
		$("#modal_sortie img").css({'width': $(window).width()-1, 'height': $(document).height()});//Le -1 est pour un bug de redimensionnement ie.
		$("#modal_sortie").css({'top': -posSearchNav.top, 'left': -posSearchNav.left});
		
		//Changement z-index
		el.css("z-index","105");
		
		//Recuperation de l'attribut
		if(!el.hasClass("nohover"))
		{ el.find("a img").attr("src",el.find("a img").attr("src").replace(".png","_on.png")); }
		el.children("ul.sousMenu").slideDown(200,function(){
			//Callback
			$("#modal_sortie").bind("mouseenter mousemove",function(){
				el.css("z-index","90");
				if(!el.hasClass("nohover"))
				{ el.find("a img").attr("src",el.find("a img").attr("src").replace("_on.png",".png")); }
				el.children("ul.sousMenu").slideUp(200);
				$("#modal_sortie").remove();
				//Rebind les menus
				$("#navigation ul li.menu").bind("mouseover",function(){survolMenu($(this))});
			});
		});
	}
});


//Ajout aux favoris
function bookmark() {
	if ( navigator.appName != 'Microsoft Internet Explorer' )
	{ window.sidebar.addPanel("Youkado","http://www.youkado.com",""); }
	else { window.external.AddFavorite("http://www.youkado.com","Youkado"); } 
}


//N'accepter que les nombres positifs entiers
function onlyDigitKey(event){
    if(!event && window.event) {event = window.event;}
    if(event.keyCode != 0 && event.keyCode != 8 && event.keyCode != 46 && event.keyCode != 37 && event.keyCode != 39){
       if(event.keyCode < 48 || event.keyCode > 57) { 
    	   event.returnValue = false; 
    	   event.cancelBubble = true;
       }
    }
    if(event.which != 0 && event.which != 8 && event.which != 46 && event.which != 37 && event.which != 39){
       if(event.which < 48 || event.which > 57) { 
    	   event.preventDefault(); 
    	   event.stopPropagation();
       }
   	}
}

// Première lettre en majuscule
function First2UpperCase(text){
	var value = $.trim(text);
	if(value.length > 2){
		value = value.substr(0, 1).toUpperCase() +  value.substr(1, value.length).toLowerCase(); 
	}
	return value;	
}

// N'accepte que les lettres et trait d'union
function onlyAlphaKey(event){
	if(!event && window.event) {event = window.event;}
	var keyCode = event.which || event.keyCode;
	
	if(isNotKeyFunction(keyCode)){
		var reCarSpeciaux = /[\x00\x08\x0D]/;
	    var reCarValides = /[a-zA-Z- ]/;
		var car = String.fromCharCode(keyCode);
		var autorisation = reCarValides.test(car) || reCarSpeciaux.test(car);
		return autorisation;
	}
	
	return true;
}

// Renvoi frai si non touche fonctionnel (suppr, del, right, left, espace)
/*
 * Tab = 9
 * backspace = 8
 * Suppr = 46
 * Begin, Left, Up, Right = 36, 37, 38, 39
 */
function isNotKeyFunction(keyCode){
	 return (keyCode != 0 && keyCode != 9 && keyCode != 8 && (keyCode < 36 || keyCode > 39) && keyCode != 46);
}
