/*---------------------- FONCTIONS D'INTERVERSION D'IMAGE / DE RECHERCHE D'OBJETS JS / DE VISIBILITE DE CALQUES ----------------------*/
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
   var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
   if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i>d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

/*------------------------------------------------------------------------------------------------------------------------------------*/
/*------------------- FONCTIONS DE VISIBILITE DE CALQUES SIMPLIFIEES / DE CENTRAGE+VISIBILITE DE CALQUES / DE POPUP ------------------*/
function show(){
	var i,args=show.arguments;
	for (i=0; i<args.length;i++){
		MM_showHideLayers(args[i],'','show');
	}
}

function hide(){
	var i,args=hide.arguments;
	for (i=0; i<args.length;i++){
		MM_showHideLayers(args[i],'','hide');
	}
}

function pop(url,W,H)
{
var fen,coody,coodx;
coody = (screen.height/2)-(H/2);
coodx = (screen.width/2)-(W/2);
fen = window.open(url,'cotra','status=0, left='+coodx+' ,top='+coody+' ,height='+H+' ,width='+W+' ,toolbar=no,status=yes,location=no,resizable=yes,scrollbars=yes,copyhistory=0,menubar=no');
fen.focus();
}

function pop2(url,W,H)
{
var fen,coody,coodx;
coody = (screen.height/2)-(H/2);
coodx = (screen.width/2)-(W/2);
fen = window.open(url,'cotra2','status=0, left='+coodx+' ,top='+coody+' ,height='+H+' ,width='+W+' ,toolbar=no,status=yes,location=no,resizable=yes,scrollbars=no,copyhistory=0,menubar=no');
fen.focus();
}

/*------------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------- FONCTIONS DE CENTRAGE DE CALQUES (Horizontal / Horizontal & Vertical) ------------------------------*/
var FLAG=0;

// variable nécessaire si menu déroulant
var decal;

function recharge(){
	//location.reload();
}

function centerLayers() {
	window.onresize = recharge;
	if(FLAG==0){
		var args = centerLayers.arguments;
		// dimensions de la fenêtre interne du navigateur
		var Xscreen = window.innerWidth?window.innerWidth:document.body.clientWidth;
		var Yscreen = window.innerHeight?window.innerHeight:document.body.clientHeight;
		// largeur et hauteur totales du groupe de calques
		var Grp_Width  = 0;
		var Grp_Height = 0;
		// offset X et Y du groupe de calques
		var Grp_Offset_X = 0;
		var Grp_Offset_Y = 0;

		// trouver la largeur totale et la hauteur totale en fonction de la position et des dimensions de chaque calque
		for (i=0 ; i<args.length ; i++) {
			var zeCalc = MM_findObj(args[i]);
	
			if (zeCalc!=null) {
				if (zeCalc.style) zeCalc = zeCalc.style;
				var posX = parseInt(zeCalc.left);
				var posY = parseInt(zeCalc.top);
	
	
				var Largeur = parseInt((zeCalc.document)?zeCalc.document.width:zeCalc.width);
				var Hauteur = parseInt((zeCalc.document)?zeCalc.document.height:zeCalc.height);
	
	
				// Grp_Width ET Grp_Height...
				var Largeur_Calc = posX + Largeur;
				var Hauteur_Calc = posY + Hauteur;
				if (Largeur_Calc > Grp_Width)  Grp_Width  = Largeur_Calc;
				if (Hauteur_Calc > Grp_Height) Grp_Height = Hauteur_Calc;
			}
		}// fin du for
	
		Grp_Offset_X = Math.floor((Xscreen - Grp_Width)/2);
		Grp_Offset_Y = Math.floor((Yscreen - Grp_Height)/2);
		if (Grp_Offset_X < 0) Grp_Offset_X = 0;
		if (Grp_Offset_Y < 0) Grp_Offset_Y = 0;
		
		// extraction des valeurs de décalage pour passage au menu
		decal=new Array(Grp_Offset_X,Grp_Offset_Y);	
	
		// Maintenant, on ajoute à chaque calque l'offset
		for (i=0 ; i<args.length ; i++) {
			var zeCalc = MM_findObj(args[i]);
			if (zeCalc!=null) {
				if (zeCalc.style) zeCalc = zeCalc.style;
				var posX = parseInt(zeCalc.left);
				var posY = parseInt(zeCalc.top);
	
				zeCalc.left = posX + Grp_Offset_X;
				zeCalc.top  = posY + Grp_Offset_Y;
			}
		}// fin du for
	FLAG=1;
	}
}

function centerHorizLayers() {
	if(FLAG==0){
		onresize = recharge;	
		var args = centerHorizLayers.arguments;
		var Xscreen = window.innerWidth?window.innerWidth:document.body.clientWidth;
		var Yscreen = window.innerHeight?window.innerHeight:document.body.clientHeight;
		var Grp_Width  = 0;
		var Grp_Height = 0;
		var Grp_Offset_X = 0;
		var Grp_Offset_Y = 0;
		for (i=0 ; i<args.length ; i++) {
			var zeCalc = MM_findObj(args[i]);
	
			if (zeCalc!=null) {
				if (zeCalc.style) zeCalc = zeCalc.style;
				var posX = parseInt(zeCalc.left);
				var posY = parseInt(zeCalc.top);
	
				var Largeur = parseInt((zeCalc.document)?zeCalc.document.width:zeCalc.width);
				var Hauteur = parseInt((zeCalc.document)?zeCalc.document.height:zeCalc.height);
	
				var Largeur_Calc = posX + Largeur;
				var Hauteur_Calc = posY + Hauteur;
				if (Largeur_Calc > Grp_Width)  Grp_Width  = Largeur_Calc;
				if (Hauteur_Calc > Grp_Height) Grp_Height = Hauteur_Calc;
			}
		}
	
		Grp_Offset_X = Math.floor((Xscreen - Grp_Width)/2);
		//Grp_Offset_Y = Math.floor((Yscreen - Grp_Height)/2);
		if (Grp_Offset_X < 0) Grp_Offset_X = 0;
		if (Grp_Offset_Y < 0) Grp_Offset_Y = 0;
		
		// extraction des valeurs de décalage pour passage au menu
		decal=new Array(Grp_Offset_X,Grp_Offset_Y);
	
		for (i=0 ; i<args.length ; i++) {
			var zeCalc = MM_findObj(args[i]);
			if (zeCalc!=null) {
				if (zeCalc.style) zeCalc = zeCalc.style;
				var posX = parseInt(zeCalc.left);
				var posY = parseInt(zeCalc.top);
	
				zeCalc.left = posX + Grp_Offset_X;
			}
		}
		FLAG=1;
	}
}



/******************* FONCTIONS DE DEFILEMENT D'ELEMENT VERS LA DROITE OU VERS LA GAUCHE *************************
*																													PRINCIPE																										
* Les éléments se trouvent dans 2 calques que l'on fait se suivre : calque1 et calque2, quand un des calques n'est plus visible,
* on le cache et on fait apparaître le calque suivant qui a été remis à la position initiale				
************************************************************************************************************************/

/*------------------------------------------ FONCTION DE DEFILEMENT D'ELEMENT VERS LA DROITE -----------------------------------------*/
function slideversdroite(nom,largeur_def,deplacement_def){
	var iens6_calque1, iens6_calque2
	var calque1=nom+'1'
	var calque2=nom+'2'
	//Affectation des références aux calques calque1 et calque2
	iens6_calque1=document.getElementById? document.getElementById(calque1) : document.all.calque1
	iens6_calque2=document.getElementById? document.getElementById(calque2) : document.all.calque2
	
	if (parseInt(iens6_calque1.style.left)<largeur_def)//Si le calque n'a pas disparu de l'écran
		iens6_calque1.style.left=parseInt(iens6_calque1.style.left)+deplacement_def //On déplace le calque à droite de "deplacement_def" pixels
	else //Sinon on le place à (la position du calque 2 - la largeur du calque + le deplacement_def) sinon il y a un décalage entre les calques 2 et 1 lors des boucles
		{MM_showHideLayers("'"+calque1+"'",'','hide')
		iens6_calque1.style.left=parseInt(iens6_calque2.style.left)-largeur_def+deplacement_def
		MM_showHideLayers("'"+calque1+"'",'','show')}
	//pour la calque 2 c presque pareil
	if (parseInt(iens6_calque2.style.left)<largeur_def)
		iens6_calque2.style.left=parseInt(iens6_calque2.style.left)+deplacement_def
	else
	//sauf qu'il n'y a pas de décalage entre les calque 1 et 2
		{MM_showHideLayers("'"+calque2+"'",'','hide')
		iens6_calque2.style.left=parseInt(iens6_calque1.style.left)-largeur_def
		MM_showHideLayers("'"+calque2+"'",'','show')}
}
/*------------------------------------------------------------------------------------------------------------------------------------*/

/*------------------------------------------ FONCTION DE DEFILEMENT D'ELEMENT VERS LA GAUCHE -----------------------------------------*/
function slideversgauche(nom,largeur_def,deplacement_def){
	var iens6_calque1, iens6_calque2
	var calque1=nom+'1'
	var calque2=nom+'2'
	//Affectation des références aux calques calque1 et calque2
	iens6_calque1=document.getElementById? document.getElementById(calque1) : document.all.calque1
	iens6_calque2=document.getElementById? document.getElementById(calque2) : document.all.calque2
	
	if (parseInt(iens6_calque1.style.left)>(-1*largeur_def))//Si le calque n'a pas disparu de l'écran
		iens6_calque1.style.left=parseInt(iens6_calque1.style.left)-deplacement_def //On déplace le calque à gauche de "deplacement_def" pixels
	else
		//Sinon on le place à la position du calque 2 + la largeur du calque - le deplacement_def sinon il y a un décalage entre les calques 2 et 1 lors des boucles
		{MM_showHideLayers("'"+calque1+"'",'','hide')
		iens6_calque1.style.left=parseInt(iens6_calque2.style.left)+largeur_def-deplacement_def
		MM_showHideLayers("'"+calque1+"'",'','show')}
	//pour le calque 2 c presque pareil
	if (parseInt(iens6_calque2.style.left)>(-1*largeur_def))
		iens6_calque2.style.left=parseInt(iens6_calque2.style.left)-deplacement_def
	else
	//sauf qu'il n'y a pas de décalage entre les calque 1 et 2
		{MM_showHideLayers("'"+calque2+"'",'','hide')
		iens6_calque2.style.left=parseInt(iens6_calque1.style.left)+largeur_def
		MM_showHideLayers("'"+calque2+"'",'','show')}
}
/*------------------------------------------------------------------------------------------------------------------------------------*/

/* ----------------------------------------------- FONCTION DE DEFILEMENT ------------------------------------------------------------*/
/* SES PARAMETRES :
	calque1 : nom des calques 1&2 -- ATTENTION SI VOUS AVEZ PLUSIEURS DEFILEMENT, IL FAUT DES NOMS DIFFERENTS !!!!
	largeur_fenetre_def : la largeur en pixel de la fenetre où se passe le défilement
	hauteur_fenetre_def : la hauteur en pixel de la fenetre où se passe le défilement
	largeur_def : le minimum est la même largeur que largeur_fenetre_def
	deplacement_def : le déplacement en pixel de l'élément à déplacer
	vitesse_def : la vitesse de rafraichissement en millisecondes
	tab_contenu : le tableau des éléments de contenu à faire défiler, si une seule valeur, alors tableau à 1 élément
	sens : le sens vers lequelle doit allez le défilement, 2 valeurs possibles : droite / gauche
	
				Ex d'appel dans le code :
				<script language="JavaScript">
				var tab_contenu1=new Array();
				tab_contenu1[0]='<font color="white">COUCOU JE SUIS LE SUPER BANDEAU DEFILANT DE TEXTE</font>';
				var timer1=defilement('txt',615,15,615,1,20,tab_contenu1,'gauche');
				</script>
				
				Ne pas oublier dans la balise body : onUnload="clearInterval(timer1);"
*/
function defilement(nom,largeur_fenetre_def,hauteur_fenetre_def,largeur_def,deplacement_def,vitesse_def,tab_contenu,sens,separateur){
	if (sens=="droite"){
		var position=largeur_def*-1
		} else {
		var position=largeur_def
		}
	var couleur_fenetre="#FFFFFF"
	var slidegauchedroite=new Array()
	slidegauchedroite=tab_contenu;
	slidegauchedroite='<nobr>'+slidegauchedroite.join(separateur)+'</nobr>'
	var iens6_calque1, iens6_calque2
	var calque1=nom+'1'
	var calque2=nom+'2'
	with (document){
		write('<div style="position:relative;width:'+largeur_fenetre_def+';height:'+hauteur_fenetre_def+';z-index:2;overflow:hidden;visibility:visible">')
		write('<div id="'+nom+'1" style="position:absolute;left:0px;top:0px;overflow:hidden;z-index:1;visibility:visible"></div>')
		write('<div id="'+nom+'2" style="position:absolute;left:'+position+'px;top:0px;overflow:hidden;z-index:1;visibility:visible"></div>')
		write('</div>')
	}	
	//Affectation des références aux calques calque1 et calque2
	iens6_calque1=document.getElementById? document.getElementById(calque1) : document.all.calque1
	iens6_calque2=document.getElementById? document.getElementById(calque2) : document.all.calque2
	//Affectation des images du slideshow à l'interieur des calques par la méthode innerhtml
	iens6_calque1.innerHTML=iens6_calque2.innerHTML=slidegauchedroite
	
	//On définit l'intervalle de lancement de la fonction slidegauche à "vitesse_def" ms
	if (sens=="droite"){
		var timer=setInterval("slideversdroite('"+nom+"',"+largeur_def+","+deplacement_def+")",vitesse_def)
		} else {
		var timer=setInterval("slideversgauche('"+nom+"',"+largeur_def+","+deplacement_def+")",vitesse_def)			
		}
	return timer;
}

/* AFFICHAGE / NON AFFICHAGE */
var ancienP = '';
var ancienImg = '';

function Switch(obj,img_fleche){
	if(document.getElementById){
		var el = document.getElementById(obj);
		var obj2='puce_'+obj;
		var puce = document.getElementById(obj2);
		var ancien = document.getElementById(ancienP);
		
		if (el) {
			if(el.style.display == "block"){
				el.style.display = "none";
				if (puce) {puce.innerHTML = '<img src="../images/navig/f_'+img_fleche+'.gif" align="absmiddle">';}
			} else {
				el.style.display = "block";
				if (puce) {puce.innerHTML = '<img src="../images/navig/f_'+img_fleche+'_bas.gif" align="absmiddle">';}
			}
		}
		if (ancienP != obj && ancienP != '') {
			ancien.style.display='none';
			var ancien2 = 'puce_' + ancienP;
			var ancienPuce = document.getElementById(ancien2);
			if (ancienPuce) {ancienPuce.innerHTML = '<img src="../images/navig/f_'+ancienImg+'.gif" align="absmiddle">';}
		}
		ancienP = obj;
		ancienImg = img_fleche;
	}
}

function confirmation(url) {
	var rep = confirm("Confirmer vous la suppression ?");
	if (rep == true) {
		window.location.href = url;
	}
}

/*------------------------------------------------------------------------------------------------------------------------------------*/
var tabXY;
var IE = document.all?true:false
//if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove=getMouseXY;

function getMouseXY(e) {
	var tempX,tempY;
  if (IE) { // grab the x-y pos.s if browser is IE
    tempX = event.clientX + document.body.scrollLeft
    tempY = event.clientY + document.body.scrollTop
  } else {  // grab the x-y pos.s if browser is NS
    tempX = e.pageX
    tempY = e.pageY
  }  
  // catch possible negative values in NS4
  if (tempX < 0){tempX = 0}
  if (tempY < 0){tempY = 0}  
  // show the position values in the form named Show
  // in the text fields named MouseX and MouseY
  tabXY = new Array(tempX,tempY);
  return tabXY;
}

function showInfo(texte){
	var calque=MM_findObj('info')
	calque.innerHTML=texte;
	calque.style.top=tabXY[1]+10;
	calque.style.left=tabXY[0]+10;
	calque.style.visibility="visible";
}

function hideInfo() {
	var calque=MM_findObj('info');
	calque.style.visibility="hidden";
}

function initInfo() {
	document.write('<DIV id="info" style="position:absolute;top:0px;left:0px;visibility:hidden;background:'+ColFond+';border:1px solid '+ColContour+';font-family:arial;font-size:11px;color:'+ColTexte+';padding:2px;"></DIV>');
}
var ColTexte='navy';ColFond='silver';ColContour='navy';
initInfo();

function text_defilantBas_DoFSCommand(sCommand, sArgs){
	
}//end function

// SCRIPT POUR FLASH
var bIsInternetExplorer = navigator.appName.indexOf("Microsoft") != -1;

// Gérer tous les messages FSCommand
function text_defilantBas_DoFSCommand(sCommand, sArgs) {
   var text_defilantHautObj = bIsInternetExplorer ? document.all.text_defilantBas : document.text_defilantHaut;
	 window.location.href='pages/actualites.html';
}//end function
