﻿// Deplacement horizontal des vignettes en valeur absolue
var deltaX = 300;


var tabSlide = new Array();


var SlideIdCourant=0;
 

// Code auparavant dans album.php

<!--
 /***********************************************
* Featured Content Glider script- (c) Dynamic Drive DHTML code library (www.dynamicdrive.com)
* Visit http://www.dynamicDrive.com for hundreds of DHTML scripts
* This notice must stay intact for legal use
***********************************************/
function includeJs(src){ 
      var script = document.createElement('script'); 
      script.type = 'text/javascript'; 
      script.src = src; 
      document.getElementsByTagName('head')[0].appendChild(script); 

}  
 
function setCookie(nom,valeur,jours) 
{
	var expDate = new Date()
	expDate.setTime(expDate.getTime() + (jours * 24 * 3600 * 1000))
	document.cookie = nom + "=" + escape(valeur)
		+ ";expires=" + expDate.toGMTString()
}
 
 function getCookie(nom) 
 {
	var deb = document.cookie.indexOf(nom + "=")
	if (deb >= 0) {
		deb += nom.length + 1
		fin = document.cookie.indexOf(";",deb)
		if (fin < 0) fin = document.cookie.length
		return unescape(document.cookie.substring(deb,fin))
		}
	return "";
}

 
 

// Url de la page photo chargée par ajax 
function urlPhotoData(aNomImg)
{
  return "photo.php?divseul=1&image=" + aNomImg;

}
 
// Appelé au chargement de la page 
function InitImage()
{
   //var myRemoteContent = "";
	// Recherche le nom de l'ancre dans l'url (pas forcement rempli)
	var nomAncre = window.location.hash;
	 
	if (nomAncre != null && nomAncre.length > 1)
	{
	   var nomImg = nomAncre.substring(1);
	   ChargeImageAvecNom(nomImg);
	}
	else
	{
		$(".pictoMoto:eq(0)").removeClass("pictoMoto").addClass("pictoMotoSelect");
	}
	
  return;
}


 
var hauteurImg = 0;

// Charge l'image d'après l'id
function ChargeImage(slideId)
{	 
	
	var nomImg = '';
	// Recherche le nom correspondant à l'id
	if ((slideId>=0) && (slideId<SlideIdMax))
	{
	  nomImg = tabSlide[slideId] ;
	}
	
	return ChargeImageAvecNom(nomImg);
}

//  Retourne le slideid d'apres le nom court de l'element
function SlideIdDapresNom(aNomSlide)
{
  var slideIdDuNom = 0;
  for(var i=0; i < SlideIdMax; i++)
  {
    if (tabSlide[i] == aNomSlide)
	{
	    slideIdDuNom = i;
	}
  }
  
  return slideIdDuNom;
}

// Taille original de l'image
var largeurImgOrg = 0;
var hauteurImgOrg = 0;
		
var heavyImage;
var dataHtml;
var nomImgACharger="";

// Charge l'image 
function ChargeImageAvecNom(nomImg)
{	 
    var rtn = false;
	var myRemoteContent = (nomImg== "") ? "course.php?divseul=1" : urlPhotoData(nomImg) ; 
	window.location.hash = (nomImg== "")  ? '' : '#' + nomImg;

	
	$("#divChargement").fadeTo("slow", 1.0);
	
	$('.imgMotoSelect').removeClass("imgMotoSelect");
	
	SlideIdCourant= SlideIdDapresNom(nomImg);
	nomImgACharger = nomImg;
	
	$.get(myRemoteContent, function(data){
		var posRtn = data.indexOf('\n');
		var urlImageAvecTaille = data.substr(0, posRtn);
		if ((nomImgACharger!= "") && (urlImageAvecTaille.indexOf('#', 0) >= 0 ))
		{
			// Image non trouvee
			alert('Image non trouvee');
			$("#divChargement").fadeTo("slow", 0.0);
		}
		else
		{
			if (nomImgACharger == "")
			{
				//  Page accueil
				$('#cibleImage').html(data);
				resizePhoto();
				$(".pictoMotoSelect").removeClass("pictoMotoSelect").addClass("pictoMoto");
				$(".pictoMoto:eq(0)").removeClass("pictoMoto").addClass("pictoMotoSelect");
				$("#divChargement").fadeTo("slow", 0.0);
			}
			else
			{
				dataHtml = data.substr(posRtn + 1);
				var reg=new RegExp("[\|]+", "g");
				var tabImg=urlImageAvecTaille.split(reg);
				var urlImage=tabImg[1];
				largeurImgOrg = parseInt(tabImg[2]);
				hauteurImgOrg = parseInt(tabImg[3]);
				heavyImage = new Image(); 
				heavyImage.onerror=function()
				{
					alert('Image non trouvee');
				}
				heavyImage.onload=function()
				{
					$('#cibleImage').fadeTo(200, 0.0, function() { 
						$(this).html(dataHtml);
						$('#casesup, #caseinf').fadeTo(0, 0.0, function() { $(this).css('visibility', 'visible')});
						$('#ImgMoto').attr({src : heavyImage.src});
						$(".pictoMotoSelect").removeClass("pictoMotoSelect").addClass("pictoMoto");
						$(".pictoMoto:eq(" + (SlideIdCourant+1) + ")").removeClass("pictoMoto").addClass("pictoMotoSelect");

						resizePhoto();
						$(this).fadeTo(200, 1.0); 
						$("#divChargement").fadeTo("slow", 0.0);

						$("#DivPhoto").hover(function(){
							if (estIEAncien())
							 {
								$('#casesup,#caseinf').show().fadeTo(0, 0.8);
							 }
							 else
							 {
								$('#casesup, #caseinf').fadeTo("slow", 0.8);
							 }
						 },function(){
							if (estIEAncien())
							 {
								$('#casesup,#caseinf').hide().fadeTo(0, 0.0);
							 }
							 else
							 {
								$('#casesup, #caseinf').fadeTo("slow", 0.0);
							 }
						 });
					}) 
				}
				// Va déclencher le onload en fin de chargement
				heavyImage.src = urlImage;
			} // (nomImgACharger == "")
		} // (urlImage == '#')
	 }); // .get
	 
	return rtn;
}
function ChargeImageSuivante()
{
  if (SlideIdCourant < SlideIdMax)
  {
     ChargeImage(SlideIdCourant+1);
	 setTimeout ("CentreVignetteAffichee()", 500);

  }
}
function ChargeImagePrecedente()
{
  if (SlideIdCourant > 1 )
  {
     ChargeImage(SlideIdCourant-1);
	 setTimeout ("CentreVignetteAffichee()", 500);
  }
}

// Centre la vignette de l'image affichée en scrollant la barre des vignettes
function CentreVignetteAffichee()
{

	var TblVignette = $("#TblVignetteNiv3").get(0);
 
	 if (TblVignette) 
	 {
	
		var i;
		var margeGauche = 0;
	    var rowVignette = TblVignette.rows[0];
		for (i=0; i<SlideIdCourant; i++) {
			margeGauche +=  parseInt(rowVignette.cells[i].offsetWidth);
		}
		var moitie = ($("#divVignette").width() / 2) -140 ;	
		
		if (margeGauche > moitie)
		{
			var leftTo= moitie - margeGauche;
			$("#TblVignetteNiv2").animate({
            left: leftTo + "px"
			}, 600);
		}

	 }
}


// Simule un height à 100% sur la table
//largeurImgOrg = parseInt(tabImg[1]);
//hauteurImgOrg = parseInt(tabImg[2]);
function resizePhoto(){
	var maxHeight = $(window).height() - 80;
	var maxWidth = $(window).width();
			
	$('#TblCentre').height($(window).height());
	 $('#cibleImage').height(maxHeight);
	 $('#cibleImage').width(maxWidth );
	if (nomImgACharger == "")
	{
		// Debut diaporama
		var tblLeft = (maxWidth - 1024) / 2;
		if (tblLeft < 0)
		{
			tblLeft = 0;
		}
		$('#tblimg').css({'margin-left' : tblLeft + 'px' });
	}
	else
	{
		 var finalWidth = largeurImgOrg;
		 var finalHeight = hauteurImgOrg;
		 var finalLeft = 0;
		 var finalTop = 0;
		 var rediAuto=true;
		 
		
		if (rediAuto) 
		 {
			// Redimenssionnement automatique avec conservation du ratio
			if (maxWidth >= largeurImgOrg && maxHeight >= hauteurImgOrg)
			{
				finalWidth = largeurImgOrg;
				finalHeight = hauteurImgOrg;
			}
			else if (maxWidth / maxHeight > largeurImgOrg / hauteurImgOrg)
			 {
				finalHeight = maxHeight;
				finalWidth = largeurImgOrg / hauteurImgOrg * maxHeight;
			 }
			 else
			 {
				finalWidth = maxWidth;
				finalHeight = hauteurImgOrg / largeurImgOrg  * maxWidth;
			 }
		 }
		  
		finalLeft = (maxWidth - finalWidth) / 2;
		finalTop =  (maxHeight - finalHeight) / 2;
		var caseLeft = (maxWidth - 900) / 2;
		
		if (!rediAuto )
		 {
			// Pas de redi auto => pas de valeur negative pour le positionnement
			if (finalLeft < 0)
			{
				finalLeft=0;
			}
			if (finalTop < 0)
			{
				finalTop=0;
			}
			if (caseLeft < 0)
			{
				caseLeft=0;
			}
		 
		 }
		
		 var caseinfTop =  finalTop + finalHeight - 50;
		 
		 $('#DivPhoto').css({'width' : maxWidth + 'px', 'height' : maxHeight + 'px' });
		 $('#ImgMoto').css({'left' : finalLeft + 'px', 'top' : finalTop + 'px', 'width' : finalWidth + 'px', 'height' : finalHeight + 'px' });

		 $('#casesup').css({'left' : caseLeft + 'px', 'top' : finalTop + 'px' });
		 $('#caseinf').css({'left' : caseLeft + 'px', 'top' : caseinfTop + 'px' });
		 if (estIEAncien())
		 {
			// les cases créent des bandes noires sous IE6 => on les masques
			$('#casesup,#caseinf').hide();
		 }
	}
}

function estIEAncien()
{
	return ($.browser.msie && ($.browser.version=="8.0" || $.browser.version=="7.0" ||  $.browser.version=="6.0" || $.browser.version=="5.0"));
}

$(window).resize(function(){
  resizePhoto();
  ResizeListeVignette();
});


// Document Chargé
$(document).ready(function() {
	InitImage();
	InitListeVignette();
	resizePhoto();
	CentreVignetteAffichee();
	ResizeListeVignette();
	$("#divChargement").fadeTo("slow", 0.0);
 });
 

function func_KeyDown(e){
	var code ;
	if (!e) var e = window.event;
	if (e.keyCode) code = e.keyCode;
	else if (e.which) code = e.which;
	 switch(code) { 
	 case 39:
	 // Droite 
	   	ChargeImageSuivante();
	 break ;
	  case 37: 
	  // Gauche
	  	ChargeImagePrecedente();
	 break ;
	 }
 } 

 function InitImageHover(aElement)
 {
 	aElement.fadeTo(0, 0.5).hover(function(){
							 $(this).fadeTo(300, 1.0);
						 },function(){
						  $(this).fadeTo(300, 0.5);
						 }); 
 }
 // Initialise la liste des vignettes
 // Doit être appelé au chargement
 function InitListeVignette()
 {
	$('#divFlecheGauche').click(function() {
		slideCarousel(1);
	});
	
	$('#divFlecheDroite').click(function() {
		slideCarousel(-1);
	});
	
	InitImageHover($(".imgMoto")); 
	
}

// Redimenssionne la liste des vignettes en fonction de la taille ecrans
function ResizeListeVignette()
{
  var largeurTheorique =  $(window).width() - 300;
  var largeur;
  
  if (largeurTheorique > 550)
  {
	largeur=550;
  }
  else if (largeurTheorique < 300)
  {
    largeur=300;
  }
  else
  {
     largeur= largeurTheorique;
  }

  $("#divVignette").css('width', largeur);
}

// Send : 1 pour droite, -1 pour gauche
function slideCarousel(aSens) {
		var mrgLeft = parseInt($("#TblVignetteNiv2").css("left"));
		var deplacement  = $("#divVignette").width() - 50;
        var leftTo =  mrgLeft + (aSens > 0 ? deplacement : -deplacement);
		var largeurTblVignette = $("#TblVignetteNiv2").width();
		if (leftTo > 0)
		{
			leftTo = 0;
		}
		if (leftTo < - (largeurTblVignette - deltaX))
		{
			leftTo = -(largeurTblVignette - deltaX);
		}
		
		$("#TblVignetteNiv2").animate({
            left: leftTo + "px"
        }, 600);
}

