var display_ssmenu_flag;
//var first_img;

isIE = function() { return (navigator.appVersion.indexOf("MSIE") != -1) ? true : false; }
isCHROME = function() { return (navigator.appVersion.indexOf("Chrome") != -1) ? true : false; }
isXP = function() { return BrowserDetect.OSversion == "XP" }

//if(display_ssmenu_flag) display_ssmenu();
//else hide_ssmenu();

function display_ssmenu() {
	var ssmenu=document.getElementById("menu").getElementsByTagName("ol");
	for(var i=0;i<ssmenu.length;i++) ssmenu[i].style.display="list-item";
	display_ssmenu_flag=1;
}

function hide_ssmenu() {
	var menu=document.getElementById("menu");
	if(menu) {
		var ssmenu=menu.getElementsByTagName("ol");
		for(var i=0;i<ssmenu.length;i++) ssmenu[i].style.display="none";
	}
	display_ssmenu_flag=0;
}

function ssmenu() {
	if(display_ssmenu_flag==0 && display_ssmenu_flag!='undefined') display_ssmenu();
	else hide_ssmenu();
}

function getXhr(){
    var xhr = null; 
	if(window.XMLHttpRequest) // Firefox et autres
		xhr = new XMLHttpRequest(); 
	else
		if(window.ActiveXObject){ // Internet Explorer 
			try {
				xhr = new ActiveXObject("Msxml2.XMLHTTP");
			}
			catch (e) {
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
			}
		}
		else { // XMLHttpRequest non supporté par le navigateur 
			alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
			xhr = false; 
		} 
        return xhr;
}

/*
function display_thumb(name,height,width){
	document.getElementById("image").getElementsByTagName("img")[0].src=image_dir+""+name;
	document.getElementById("image").getElementsByTagName("img")[0].height=height;
	document.getElementById("image").getElementsByTagName("img")[0].width=width;
	document.getElementById("image").getElementsByTagName("a")[0].href=image_dir+"larges/large_"+name;
}*/

function display_large(name){
	window.open(image_dir+''+'larges/large_'+name, ''+name, 'toolbar=no,location=no,directories=no,status=no,menubar=no');void(0);
}



/********* Début de querystring_fonc v1.0 ********
 ** Nom du script : querystring_fonc v1.0
 ** Auteur: Fr&eacute;d&eacute;ric REMISE (Derf)
 ** Date de cr&eacute;ation: 23/01/2003
 ** Email :
**********************************/

// R&eacute;cup&eacute;ration de la requête contenue dans l'URL (sans le ?)
var req = window.location.search.substr(1,window.location.search.length);

// R&eacute;cup&eacute;ration des paires param&egrave;tre=valeur
var dbl = req.split('&');

var aPrm = new Array();    // Pour stock. le nom des param&egrave;tres
var aVal = new Array();    // Pour stock. la valeur des param&egrave;tres
var objQS = new Object();  // Objet pour stock. le nom des param&egrave;tres

for (i=0;i < dbl.length;i++) {
  // Recup. le nom des parametres (Attention : elem.1 du tab. = param.1)
  aPrm[i+1] = dbl[i].substring(0,dbl[i].indexOf('='));
  
  // Recup. la valeur des parametres (Attention : elem.1 du tab. = val.param.1)
  aVal[i+1] = unescape(dbl[i].substring(dbl[i].indexOf('=')+1,dbl[i].length));
  
  // Stock la valeur des param&egrave;tres sous forme de propri&eacute;t&eacute;
  objQS[aPrm[i+1]] = aVal[i+1];
}

// Renvoie la valeur d'un parametre par son nom
function getQueryStringByName(pname)
{
  return eval("objQS." + pname);
}

// Renvoie la valeur d'un param&egrave;tre par sa position dans la requete
// Attention : le premier param&egrave;tre de la requete est le 1 etc..
function getQueryStringByPos(ppos)
{
  return aVal[ppos];
}

// Renvoie le nom d'un param&egrave;tre par sa position dans la requete
// Attention : le premier param&egrave;tre de la requete est le 1 etc..
function getParamNameByPos(ppos)
{
  return aPrm[ppos];
}


/********* Fin de querystring_fonc v1.0 ********/


function menu() {
	var page=getQueryStringByName('page');
	if(page=="liste" || page=="details") ssmenu();
	//else document.getElementById('welcome').style.color="#FFFFFF";
}

function setSizeOfMain() {
	var page=getQueryStringByName('page');
	document.getElementById("main").style.height=document.body.clientHeight-(page=="accueil"?271:216)+"px";
	document.getElementById("main2").style.height=document.body.clientHeight-(page=="accueil"?270:255)+"px";
	document.getElementById("left").style.height=(document.body.clientHeight-201)+"px";
}

function getSizeOfMain() {
	return document.getElementById("main").style.height;
}

function resizeImgEvenements() {
	document.getElementById("main").getElementsByTagName("img")[0].style.height=Math.min(document.body.clientHeight-105,500)+"px";
}

function hauteur_iframe() {
	/*if(document.all) document.all.iframeName.height=document.body.clientHeight-90+"px";
	else*/
	document.getElementsByTagName("iframe").item(0).height=document.body.clientHeight-110+"px";
}
if(BrowserDetect.browser=="Explorer" && isXP()) {
	window.addEventListener?window.addEventListener("load",setSizeOfMain,false):window.attachEvent("onload",setSizeOfMain);
	window.addEventListener?window.addEventListener("resize",setSizeOfMain,false):window.attachEvent("onresize",setSizeOfMain);
}
window.addEventListener?window.addEventListener("load",menu,false):window.attachEvent("onload",menu);

//if(getQueryStringByName("page")=="evenements") {
//	window.addEventListener?window.addEventListener("load",resizeImgEvenements,false):window.attachEvent("onload",resizeImgEvenements);
//	window.addEventListener?window.addEventListener("resize",resizeImgEvenements,false):window.attachEvent("onresize",resizeImgEvenements);
//}

if(getQueryStringByName("page")=="acces") {
	window.addEventListener?window.addEventListener("load",hauteur_iframe,false):window.attachEvent("onload",hauteur_iframe);
	window.addEventListener?window.addEventListener("resize",hauteur_iframe,false):window.attachEvent("onresize",hauteur_iframe);
}



changeOpac = function(id,opac) {
    var object = document.getElementById(id).style;
    object.opacity = (opac);
    object.MozOpacity = (opac);
    object.KhtmlOpacity = (opac);
    object.filter = "alpha(opacity=" + opac + ")";
	//object.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity="+opac+")";
}
var popup=getQueryStringByName('popup')==1?true:false;

function close_popup() {
	var a=document.getElementById("page").getElementsByTagName("a");
	for(var i=0;i<a.length;i++) a[i].style.cursor="pointer";
	xOpacity=100;
	try {
		changeOpac("left",100);
		changeOpac("top",100);
		changeOpac("main",100);
		changeOpac("texte",100);
	} catch(e) {
		try { console.log(e.message); } catch(e) {}
	}
	document.getElementById("popup").style.display="none";
	popup=false;
}
/*
function MM_preload() { //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_preload.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 fadeIn(num) {
	var id="img"+num;
	document.getElementById(id).style.display = 'block';
	Fade.reset(id);
	Fade.fadeIn(id);
}

function fadeOut(num) {
	var id="img"+num;
	Fade.fadeOut(id);
}

function crossfade(next) {
	var newSrc=document.getElementById("img"+next).src;
	Fade.crossfade(document.getElementById("img"), newSrc, '2')
}

function display(num) {
	var imgs=document.getElementById('diaporama').getElementsByTagName('img');
	var length=imgs.length;
	var i;
	var next=(parseInt(num)+1)%length;
	
	for(i=0;i<length;i++) {
		if(num!=i) imgs[i].style.display="none";
	}
	
	fadeIn(next);
	fadeOut(num);
	setTimeout("display('"+next+"')",6000);
}

function rollOver() {
	Fade.time = 20;
	document.getElementById("img0").style.display = 'block';
	setTimeout("display(0)",4000);
}

//window.addEventListener?window.addEventListener("load",rollOver,false):window.attachEvent("onload",rollOver);
*/

function display_thumb(name,height,width) {
	var imgPreloader = new Image();
	var image = $('image').getElementsByTagName("img")[0];
	var link = $('image').getElementsByTagName("a")[0];
	
	if(true) {
		// once image is preloaded, resize image container
		imgPreloader.onload = (function(){
			link.href = "#";
			link.rel = "";
			image.src = "img/transparent.png";
			
			resizeImageContainer(width,height);
			
		
			new Effect.Appear(image, {
				duration: 0.0,
				from: 0.0, 
				to: 1.0,
				queue: 'end', 
				afterFinish: (function(){
					$('image').setStyle({height: height, width: width});
					image.setOpacity(0);
					image.setStyle({visibility: 'visible'});
					image.src = image_dir+""+name;
					link.href = image_dir+""+name;
					link.rel = "lightbox";
					new Effect.Opacity(image, { 
						from: 0.0, 
						to: 1.0,
						duration: 1.0,
						queue: 'end', 
						afterFinish: (function(){
							$('image').setStyle({height: '', width: ''});
						}).bind(this) 
					});
					
				}).bind(this) 
			});
		}).bind(this);
		imgPreloader.src = image_dir+""+name;
	}
}

function resizeImageContainer(imgWidth, imgHeight) {

    // get current width and height
    var widthCurrent  = $('image').getElementsByTagName("img")[0].width;
    var heightCurrent = $('image').getElementsByTagName("img")[0].height;

    // get new width and height
    var widthNew  = imgWidth;
    var heightNew = imgHeight;

	// scalars based on change from old to new
	var xScale = (widthNew  / widthCurrent)  * 100;
	var yScale = (heightNew / heightCurrent) * 100;

	// calculate size difference between new and old image, and resize if necessary
	var wDiff = widthCurrent - widthNew;
	var hDiff = heightCurrent - heightNew;

	if (hDiff != 0) new Effect.Scale($('image').getElementsByTagName("img")[0], yScale, {scaleX: false, duration: 0.5, queue: 'front'}); 
	if (wDiff != 0) new Effect.Scale($('image').getElementsByTagName("img")[0], xScale, {scaleY: false, duration: 0.5, delay: 0}); 

	// if new and old image are same size and no scaling transition is necessary, 
	// do a quick pause to prevent image flicker.
	var timeout = 0;
	if ((hDiff == 0) && (wDiff == 0)){
		timeout = 100;
        if (Prototype.Browser.IE) timeout = 250;   
    }
}
