jQuery.fn.extend(
{
	findPos : function() 
	{	
		obj 		= $(this).get(0);
		var curleft = obj.offsetLeft || 0;
		var curtop 	= obj.offsetTop || 0;
		
		while (obj = obj.offsetParent) 
		{
			curleft += obj.offsetLeft;
			curtop 	+= obj.offsetTop;
		}	
		
		return {x:curleft,y:curtop};	
	}

});


/*Fonctions pour les news défilantes*/
function callback() {
	var firstElement = jQuery("#infos_defilantes li:first-child");
	
	firstElement.removeAttr('style').next().removeAttr('style');
	//firstElement.next().removeAttr('style');
	firstElement.clone().insertAfter( jQuery("#infos_defilantes li:last-child") );
	firstElement.remove();
}
	
function defil() {
jQuery("#infos_defilantes li:first-child").animate({top:'-=20px'},900 );
jQuery("#infos_defilantes li:first-child").next().animate({top:'-=20px'},900, function() { callback(); } );
}
/*Fin Fonctions pour les news défilantes*/


$(document).ready(function() {

	var int = setInterval(defil, 4000);

	if( $.browser.msie ) 
	{	
		$('.menu li:first-child').css( 'paddingLeft' , '0' );		
		$('.menu li:last-child').css( 'background' , '0' );
		$('.sous_menu li:first-child').css( 'paddingLeft' , '9' );
		$('#infos_defilantes li:first-child').css( 'paddingLeft' , '0' );	
	}
	
	$('#select_pays li a').hover( function() 
	{ 	
		$('#select_pays ul').show();
	}, function() { $('#select_pays ul').hide(); });
	
	$('#send_form_contact').click( function () 
	{
	$('#form_contact').submit();return false;
	});
	
	$('#en_savoir_plus').click( function () 
	{
	$('#textplus').toggle();return false;
	});
	
	$('dd.plus > a').click( function () 
	{
	$(this).parent().next().show();return false;
	});
	
	$('dd.popup > a.fermer').click( function () 
	{
	$(this).parent().hide();
	});
	


	/* *** detection version FlashPlayer 
			+ suppression bordures de flash sur IE et OPERA *** */
	// déclaration de la version demandée
	navigator.NeedFlashVersion=7;
	
	
	navigator.NeedFlash=false; //retounera false ou le nbre de swf trouvés
	navigator.FlashVersion=0;
	navigator.CanPlayFlashPlayer=false;
	
	if( document.getElementsByTagName ){ // DOM
	var of=document.getElementsByTagName('object'); var nf=of.length;
		for (var i=0;i<nf;i++){
		var source=of[i].innerHTML;
			if(!(/\.swf["?]/gi.test(source))) continue;
		of[i].AllowScriptAccess = "always";
			if( !navigator.NeedFlash ){
			navigator.NeedFlash=0;
				try{
				navigator.FlashVersion=parseInt(navigator.plugins["Shockwave Flash"].description.match(/[0-9]+[.,]/));
				}catch(e){
					try{
					var ie_vers=of[i].GetVariable("$version");
					navigator.FlashVersion=(parseInt(ie_vers.match(/[0-9]+[.,]/)));
					}catch(e){}
				}
			}
		navigator.NeedFlash++;
		}
	// affichage info utilisateur
		if(navigator.NeedFlash && navigator.FlashVersion<navigator.NeedFlashVersion){
		navigator.CanPlayFlashPlayer=false;
		/* ** 
		rien ne s'affichera si :
		- pas de flash dans la page
		- navigator.FlashVersion = NaN ou Undefined ou est bonne :)
		- la classe NeedFlashVersion est à display none :)
		** */
		var div=document.createElement('DIV');
		div.className='NeedFlashVersion';
		div.innerHTML='You need to upgrade your Flash Player';
		document.body.appendChild(div);
		}else{
		navigator.CanPlayFlashPlayer=true;
		}
	}
	/* *** FIN detection version FlashPlayer *** */
document.onmousedown=Function("return getMouseEvent();");
document.onmouseup=Function("getMouseEvent();");

})
	/* *** dialogue actionscript vers javascript
	function appelvenantdeflash(){
	//if ( ! navigator.CanPlayFlashPlayer) {setTimeout("appelvenantdeflash()",2000)return;}
	// ne fonctionnera pas s'il y a de arguments ;(
	// comme appelvenantdeflash(document);
	// ICI : code à exécuter après reload des flash sur IE et Op pour éviter plusieurs appels
	} *** */

function Fwrite(str){document.write(str);}
function ismail(mail){return (/^([a-z_0-9\.-]+)@([a-z_0-9\.-]+)\.([a-z]{2,5})$/).test(mail);}
function empty(str){return !(/[^\s]/).test(str);}
function findObj(n,c){var x,d=c?c.document:document; if(!(x=d[n])&&d.all) x=d.all[n];if(!x && d.getElementById) x=d.getElementById(n);return x;}
function getBounds(obj){obj.X=0;obj.Y=0;obj.W=obj.offsetWidth;obj.H=obj.offsetHeight;var tempObj=obj;while(tempObj.tagName!='BODY'){obj.X+=tempObj.offsetLeft;obj.Y+=tempObj.offsetTop; if(!tempObj.offsetParent) break;tempObj=tempObj.offsetParent;}return obj;}
function getMouseEvent(obj){if(self.objToDrag==null) { self.objToDrag=false; self.zind=100; }var NavEvent,x_mouse,y_mouse,retVal;NavEvent=self.event||getMouseEvent.caller.arguments[0];retVal=NavEvent.returnValue;typevent=NavEvent.type;var sx= self.scrollX || (document.body.scrollLeft+document.documentElement.scrollLeft) || 0;var sy= self.scrollY || (document.body.scrollTop+document.documentElement.scrollTop) || 0;x_mouse=NavEvent.clientX+sx||NavEvent.x;y_mouse=NavEvent.clientY+sy||NavEvent.y;if(typevent=='mousedown' && obj){objToDrag=obj;obj.x_in=x_mouse-obj.X;obj.y_in=y_mouse-obj.Y;if(document.selection){document.selection.empty(); if(/msie 4.+windows/i.test(navigator.userAgent))self.scrollTo(sx,sy);};retVal=false;return retVal;};if(typevent=='mousedown' && objToDrag){zind++;document.onmousemove=Function("return getMouseEvent(objToDrag)");objToDrag.activeIt(x_mouse-objToDrag.x_in,y_mouse-objToDrag.y_in);retVal=false;return retVal;};if(typevent=='mouseup' && objToDrag){ document.onmousemove=null;objToDrag.stopIt(x_mouse-objToDrag.x_in,y_mouse-objToDrag.y_in);objToDrag=false;retVal=true;return retVal;}if(typevent=='mousemove' && objToDrag){objToDrag.activeIt(x_mouse-obj.x_in,y_mouse-obj.y_in);retVal=false;return retVal;}}

/* GFP GFP GFP GFP */
function GPF(obj,idr,lib){
getBounds(obj);
var div=findObj('divgpf');
var barre=div.firstChild;
barre.popup=div;
barre.onmousedown=Function("getBounds(this);return getMouseEvent(this);");
barre.activeIt=function(x,y){this.popup.style.top=y+'px'; this.popup.style.left=x+'px';}
barre.stopIt=function(x,y){}
// div.className='popGPF';
barre.popup.style.display='block';
barre.popup.style.top=(obj.Y-100)+'px';
barre.popup.style.left=Math.min((obj.X-150),(document.body.offsetWidth-350))+'px';

/************* formulaire ***************/
// envoi :formGPF, sendGPF, closedGPF
// hidden en dur : id_langue_pays , id_ressource, err , ok|no
// a remplir avec idr, lib :  value::id_ressource, innerHTLM :: filetitle
/************* formulaire ***************/
barre.envoi=findObj('sendGPF');
barre.f=barre.envoi.f=document.forms['formGPF'];
barre.f.id_ressource.value=idr;
barre.f.loc.value=document.location;

barre.ferme=findObj('closedGPF');
barre.ferme.popup=div;
	barre.ferme.onclick=function(){this.popup.style.display='none';}
barre.libelle=findObj('filetitle');
barre.libelle.innerHTML=lib;

barre.envoi.onclick=function(){
	var n =barre.f.elements.length;
		if( !ismail(barre.f.email.value) ){
		return alert(barre.f.err.value);
		}else{
			for(var i=0;i<n;i++){
				if( barre.f.elements[i].name=='alias' ) continue;
				if( empty(barre.f.elements[i].value) ){
					//alert(barre.f.elements[i].name)
				return alert(barre.f.err.value);
				break;
				}
			}
		}
	//alert(this.f.id_ressource.value);
	/*********AJAX*********/
	var xhr_object = null;
		if(window.XMLHttpRequest) xhr_object = new XMLHttpRequest();
		else if(window.ActiveXObject) xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
		else {alert("Your browser doesn't support AJAX method."); return;}
	
	var filename = barre.f.alias.value+"js/ajax-gpf.php";
	var data     = null;
	data     = '';
	//data = "ID="+s1+"&CHAMP="+name+"&VALEUR="+s2;
	
		for(var i=0;i<n;i++){
			data+=barre.f.elements[i].name+'='+barre.f.elements[i].value+'&';
		}
	
	xhr_object.open("POST", filename, true);
	
	xhr_object.onreadystatechange = function() {
			if(xhr_object.readyState == 4) {
			var tmp = xhr_object.responseText;
				if( /^Humm/i.test(tmp)){ // retour texte serveur qui vaut : xhr_object.status == 200
				alert(barre.f.err.value);
				}else if(/^Ok/i.test(tmp)){
				alert(barre.f.ok.value);
				barre.ferme.onclick();
				}else{
				alert(barre.f.no.value);
				}
			 //alert(tmp);
			}
		}
	
	xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xhr_object.send(data);
	/*********AJAX*********/
	}
/************* formulaire ***************/
}
/* GFP GFP GFP GFP */


/*************************************/
$(window).load(function () {

	if( $('#central_accueil .menu').length ) 
	{
		$('#central_accueil .menu a').each( function() 
		{	
			$(this).click( function () 
			{
				//Si l'élément cliqué est déjà actif on annule l'action
				if ( $(this).parent().hasClass('actif') ) 
				{
					
					return false;
				}
				else
				{
					//Marque l'élément cliqué comme actif
					$('#central_accueil .menu li.actif').removeClass();
					$(this).parent().addClass('actif');
				}
				
				//point de référence
				var posR 	= $('#conteneur_rubrique').findPos();
				//L'attribut rel du lien cliqué contient l'identifiant du bloc que l'on cherche à atteindre
				var rel 	= $(this).attr('rel');			
				var el 		= '#'+rel;
				
				if ( $(el).length && dif != 0 ) 
				{	
					var pos = $(el).findPos();
					var dif = posR.y - pos.y;

					$('#conteneur_rubrique').animate({ 
						top:dif
					}, 1000);				
				}
						
				return false;		
			});	
		});	
	}
	
})

