<!--

// -----------------------------------------------------------------------------
// FONCTIONS ADOBE
// -----------------------------------------------------------------------------

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_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_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_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_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

// -----------------------------------------------------------------------------
// VARIABLES GLOBALES
// -----------------------------------------------------------------------------

// Version majeure de Flash requise
var requiredMajorVersion = 8;

// Version mineure de Flash requise
var requiredMinorVersion = 0;

// Révision de Flash requise
var requiredRevision = 0;

// url en cours
var id_content = '';

// 
var init_height = 0;

// -----------------------------------------------------------------------------
// GESTION DE LA NAVIGATION
// -----------------------------------------------------------------------------

// on instancie un nouvel objet Querystring
var qs = new Querystring();

// récupère le nom de la page en cours sans l'extension
function getPageName() {
	var path = document.location.href;
	var tab = path.split("/");
	var fichier_ext = tab.splice(tab.length-1, 1).toString();
	var tab2 = fichier_ext.split(".");
	return tab2.splice(0, 1).toString();
}

// retourne les paramètres passés aux flashs
function getPageParam() {
	return '?page_name=' + getPageName() + '&id_content=' + qs.get("id_content");
}

// détecte si le navigateur est FF2 pour Mac
// (FF2 pour Mac bug avec la gestion de l'opacité
// on lui applique un traitement spécial)
function detectMacXFF2() {
	var userAgent = navigator.userAgent.toLowerCase();
	if (/firefox[\/\s](\d+\.\d+)/.test(userAgent)) {
		var ffversion = new Number(RegExp.$1);
		if (ffversion < 3 && userAgent.indexOf('mac') != -1) {
			return true;
		}
	}
}

// récupère le contenu de la page passée en paramètre
function getContent(url) {
	
	if (url == '' || url == 'undefined')
		return;
	
	if (id_content == url)
		return;
	else
		id_content = url;
	
	var url = 'includes/_' + url + '.html';
	
	var ajaxObject = new Ajax.Request(url, {
			method: 'get', 
			parameters: '', 
			onComplete: showContent
		});
}

// appelé lorsque le contenu est chargé
function showContent(originalRequest) {
	
	// on conserve le contenu retourné
	var response_text = decodeURIComponent(originalRequest.responseText);
	
	// on met à jour le contenu du div masqué
	$('next_content').innerHTML = response_text;
	
	// on récupère la hauteur du contenu chargé
	var next_height = Element.getHeight('next_content');
	
	$('next_content').innerHTML = $('content').innerHTML;
	init_height = Element.getHeight('content');
	
	// est-ce que l'on est dans le cas de FF2 ?
	if (detectMacXFF2()) { // oui
		
		// on applique une transformation de la zone de contenu
		$("content").morph("height: " + next_height + "px", {duration: .5, afterFinish:function() {
			
			// on met à jour le contenu
			$('content').innerHTML = response_text;
			
			// on l'affiche en cut
			Element.show('content');
			
			// on réinitialise lightbox
			initLightbox();
		}});
		
	} else { // non
		
		// on masque le contenu actuel
		$('content').setOpacity(0);
		
		// on applique une transformation de la zone de contenu
		$("content").morph("height: " + next_height + "px", {duration: .5, afterFinish:function() {
			
			// on met à jour le contenu
			$('content').innerHTML = response_text;
			
			// on l'affiche
			new Effect.Appear('content',{duration:1.5});
			
			// on réinitialise lightbox
			initLightbox();
		}});
	}
}

// masque le contenu
function hideContent() {
	
	$('content').innerHTML = '';
	
	// est-ce que l'on est dans le cas de FF2 ?
	if (detectMacXFF2()) { // oui
		
		// on applique une transformation de la zone de contenu
		$("content").morph("height: " + init_height + "px", {duration: .5, afterFinish:function() {
			
			// on efface le contenu
			$('content').innerHTML = $('next_content').innerHTML;
			
			// on met à jour id_content
			id_content = '';
		}});
		
	} else { // non
		
		// on masque le contenu
		//new Effect.Fade('content',{to:0.0001, duration:.5, afterFinish:function() {
			
			// on applique une transformation de la zone de contenu
			$("content").morph("height: " + init_height + "px", {duration: .5, afterFinish:function() {
				
				// on efface le contenu
				$('content').innerHTML = $('next_content').innerHTML;
				
				// on met à jour id_content
				id_content = '';
			}});
		//}});
	}
}

// ouvre une pop-up
function openPop(url, width, height) {
	window.open(url,'POPUP','toolbar=0, location=0, directories=0, status=0, scrollbars=0, resizable=1, copyhistory=0, menuBar=0, width='+width+', height='+height);	
}

// est-ce qu'il y a une sous-page précisée ?
if (qs.get("id_content") != '' && qs.get("id_content") != null) // oui
	getContent(qs.get("id_content"));

// change de langue selon le contexte
function changeLanguage(code_lang) {
	var path = document.location.href;
	var tab = path.split("/");
	var page = tab.splice(tab.length-1, 1).toString();
	var cl = '';
	if (code_lang == '')
		cl = '../';
	else
		cl = '../'+code_lang+'/';
	if (page == '')
		page = cl+'index.html';
	else
		page = cl+page;
	location.href = page;
}
