// JavaScript Document
/*  GaleriePHP JavaScript, version 3.2.1
*
 *  (c) 2009 Joël Gugger <joel_gugger@rdlp.ch>
 *
/*--------------------------------------------------------------------------*/

// Récupération des infos du navigateur
var N = navigator.appName; var V = navigator.appVersion;

var NomNavigateur = N; var VersionNavigateur = "?";
if (N == "Microsoft Internet Explorer") {
	VersionNavigateur = V.substring(V.indexOf("MSIE",0)+5, V.indexOf(";", V.indexOf("MSIE",0)));
}
if (N == "Opera") {
	VersionNavigateur = V.substring(0, V.indexOf("(", 0));
}
if (N == "Netscape") {
	if (navigator.vendor == "") { // Mozilla
		VersionNavigateur = (V.substring(0, V.indexOf("(", 0)));
		NomNavigateur = "Mozilla";
		if (VersionNavigateur == 5) {
			VersionNavigateur = "1";
		}
	} else { // NS 4 ou 6
		VersionNavigateur = (V.substring(0, V.indexOf("(", 0)));
		if (VersionNavigateur == 5) {
			VersionNavigateur = "6.0";
			if (navigator.vendorSub != "") {version = navigator.vendorSub;}
		}
	}
}

//fonction d'affichage de la div bloc par rapport a la souris
function ViewerON(event, i, title){
  //
  //configuration
  //
  var dossier = './pictures';//liens relatif contenant le dossier dans lequelle chercher les photos de la galerie
  
  var title;
  var i;
  
  var imagePhotos = new Image();
  imagePhotos.src = dossier+'/item/'+i;
  
  //alert(title+i+event);
  

/*--------------------------------------------------------------------------*/
  
  
  if(NomNavigateur == 'Microsoft Internet Explorer'){
    // pour IE
    var x = event.clientX;
    var y = event.clientY;
	var l = window.screen.availWidth;
	var h = (window.screen.availHeight) - 160;
  }
  
  if(NomNavigateur == 'Mozilla' || NomNavigateur == 'Opera' || NomNavigateur == 'Netscape'){
    // pour Mozilla
	var x = event.clientX;
    var y = event.clientY;
    var h = window.innerHeight;
    var l = window.innerWidth;
  }
  
  if(NomNavigateur == 'Microsoft Internet Explorer'){
    // pour IE
    /* recuperation de la largeur de la Div bloc */
    var li = document.getElementById('viewer').offsetWidth;
    /* recuperation de la hauteur de la Div bloc */
    var hi = document.getElementById('viewer').offsetHeight;
  }
  
  if(NomNavigateur == 'Mozilla' || NomNavigateur == 'Opera' || NomNavigateur == 'Netscape'){
    // pour Mozilla
    /* recuperation de la largeur de la Div bloc */
    var li = window.getComputedStyle(document.getElementById('viewer'),null).getPropertyValue('width');
    li = parseInt(li);
    /* recuperation de la hauteur de la Div bloc */
    var hi = window.getComputedStyle(document.getElementById('viewer'),null).getPropertyValue('height');
    hi = parseInt(hi);
  }
  
  
  if (NomNavigateur == 'Mozilla' || NomNavigateur == 'Opera' || NomNavigateur == 'Netscape'){
    // pour Mozilla
	  if (x <= l/2 && y < h/2 - 25){
		x += 15;//decalage horizontal de la div pour quelle soit pas coller a la souris
		y += 25;//decalage vertical de la div pour quelle soit pas coller a la souris
	  } if (x > l/2 && y < h/2 - 25){
		x -= li;//on soustrai la div pour quelle s'affiche de l'autre coter
		x -= 30;//decalage horizontal de la div pour quelle soit pas coller a la souris
		y += 25;//decalage vertical de la div pour quelle soit pas coller a la souris
	  } if (x <= l/2 && y > h/2 + 25){
		x += 15;//decalage horizontal de la div pour quelle soit pas coller a la souris
		y -= 25;//decalage vertical de la div pour quelle soit pas coller a la souris
		y -= hi;//on soustrai la div pour quelle s'affiche de l'autre coter
	  } if (x > l/2 && y > h/2 + 25){
		x -= 15;//decalage horizontal de la div pour quelle soit pas coller a la souris
		x -= li;//on soustrai la div pour quelle s'affiche de l'autre coter
		y -= 25;//decalage vertical de la div pour quelle soit pas coller a la souris
		y -= hi;//on soustrai la div pour quelle s'affiche de l'autre coter
	  } if (x <= l / 2 && y >= h/2 - 25 && y <= h/2 + 25){
		y -= 25;//decalage vertical de la div pour quelle soit pas coller a la souris
		x += 15;//decalage horizontal de la div pour quelle soit pas coller a la souris
		y -= hi/2; //on soustrai la div pour quelle s affiche de l autre coter
	  } if (x > l/2 && y >= h/2 - 25 && y <= h/2 + 25){
		y -= 25;//decalage vertical de la div pour quelle soit pas coller a la souris
		x -= 15;//decalage horizontal de la div pour quelle soit pas coller a la souris
		y -= hi/2;//on soustrai la div pour quelle s affiche de l autre coter
		x -= li;//on soustrai la div pour quelle s'affiche de l'autre coter
	  }
  }
  
  if (NomNavigateur == 'Microsoft Internet Explorer'){
    // pour IE
	x += 15;//decalage horizontal de la div pour quelle soit pas coller a la souris
	y += 25;//decalage vertical de la div pour quelle soit pas coller a la souris
	
	if (y > h/2){
		y -= hi;
		y -= 25;
		y -= 5;
	}
	if (x > l/2){
		x -= li;
		x -= 15;
		x -= 10;
	}
  }
  
  /*===== EMENTATION =====*/
  if (x <= 1) x = 1;//si le positionnement horizontal depasse en negatif, on le repositionne a 1px du bord
  if (x + li + 3 >= l) x = l - li -3;//si le positionnement horizontale depasse de la largeur de la fenetre on le colle a trois 3px du bord droite
  if (y <= 1) y = 1;//si le positionnement vertical depasse en negatif, on le repositionne a 1px du bord
  if (y + hi + 3 >= h) y = h - hi -3;//si le positionnement vertical depasse de la hauteur de la fenetre on le colle a trois 3px du bas
  /*===== FIN DE L'EMENTATION =====*/
  
  if (NomNavigateur == 'Mozilla' || NomNavigateur == 'Opera' || NomNavigateur == 'Netscape'){
    // pour Mozilla
    if (imagePhotos.complete){
      var elementBloc = document.getElementById('viewer');//cree une variable qui contient l'element bloc a afficher
	  elementBloc.style.top = y+'px';//modifie la position a partir du haut
      elementBloc.style.left = x+'px';//modifie la position a partir de la gauche
      elementBloc.style.visibility = 'visible';//affiche l'element qui est cacher par defaut
      elementBloc.style.display = 'block';
      elementBloc.style.width = 'auto';
      elementBloc.style.height = 'auto';
      elementBloc.innerHTML = '<img src="'+dossier+'/item/'+i+'" title="'+title+'" id="ImageApercuGaleriePHP" /><br /><p class="titleViewer">'+title+'</p>';//ecrit dans le bloc l'image a afficher
    } else {
      var elementBloc = document.getElementById('viewer');//cree une variable qui contient l'element bloc a afficher
	  elementBloc.style.top = y+'px';//modifie la position a partir du haut
      elementBloc.style.left = x+'px';//modifie la position a partir de la gauche
      elementBloc.style.visibility = 'visible';//affiche l'element qui est cacher par defaut
      elementBloc.style.display = 'block';
      elementBloc.style.width = 'auto';
      elementBloc.style.height = 'auto';
      elementBloc.innerHTML = '<img src="./pictures/loading.gif" title="" class="loading" /></p>';//ecrit dans le bloc l'image a afficher
    }
  }
  
  if (NomNavigateur == 'Microsoft Internet Explorer'){
    // pour IE
    if (imagePhotos.complete){
      var elementBloc = document.getElementById('viewer');//cree une variable qui contient l'element bloc a afficher
      elementBloc.style.top = y+'px';//modifie la position a partir du haut
      elementBloc.style.left = x+'px';//modifie la position a partir de la gauche
      elementBloc.style.visibility = 'visible';//affiche l'element qui est cacher par defaut
      elementBloc.style.display = 'block';
      elementBloc.innerHTML = '<img src="'+dossier+'/item/'+i+'" title="'+title+'" id="ImageApercuGaleriePHP" /><br /><p class="titleViewer">'+title+'</p>';//ecrit dans le bloc l'image a afficher
    } else {
      var elementBloc = document.getElementById('viewer');//cree une variable qui contient l'element bloc a afficher
      elementBloc.style.top = y+'px';//modifie la position a partir du haut
      elementBloc.style.left = x+'px';//modifie la position a partir de la gauche
      elementBloc.style.visibility = 'visible';//affiche l'element qui est cacher par defaut
      elementBloc.style.display = 'block';
      elementBloc.innerHTML = '<img src="./pictures/loading.gif" title="" class="loading" /></p>';//ecrit dans le bloc l'image a afficher
    }
  }
}


/*--------------------------------------------------------------------------*/

//fonction qui modifie le parametre de la div bloc sur "hidden" (cacher)
function ViewerOFF(){
  var elementBloc = document.getElementById('viewer');//selection de l'element 'bloc'
  elementBloc.style.display = 'none';//on cache l'element
  elementBloc.style.visibility = 'hidden';
}

/*--------------------------------------------------------------------------*/
