//Zoom in image LS fonction JS

var img_largeur_max=0;
var img_hauteur_max=0;
var img_hauteur_min=0;

///*width: 792px;*/ height: 400px;

function MiseEnPlace() {
	//Détecte la taille de l'image
	var node=document.getElementById('image');
	img_largeur=node.offsetWidth;
	img_hauteur=node.offsetHeight;

	//recherche d'info (Michel Deboom)
	// ie6 ou ie7/win suivant doctype
	var db=!document.documentElement.clientWidth?document.body:document.documentElement,
	// infos sur la fenêtre du navigateur
	sx=window.pageXOffset?window.pageXOffset:db.scrollLeft,		// scroll h
	sy=window.pageYOffset?window.pageYOffset:db.scrollTop, 		// scroll v
	fx=window.innerWidth?window.innerWidth:db.clientWidth, 		// l fenêtre
	fy=window.innerHeight?window.innerHeight:db.clientHeight,	// h fenêtre
	largeur_fenetre=fx-sx;
	hauteur_fenetre=fy-sy;

	//Pour activer les fonctions de zooming, il faut que l'image soit trop grande pour la fenètre
	if ( (img_largeur + getOffsetleft(node, 0))> largeur_fenetre || (img_hauteur + getOffsettop(node, 0))> hauteur_fenetre) {
		//activation du zooming

		//calcul hauteur mini pour que l'image rentre dans la fenètre si indispensable
		img_hauteur_min= hauteur_fenetre-getOffsettop(node, 0)-10; /* 10 px de marge*/

		//On effectue le zoomout (réduction de l'image)
		zoomout(node);
	}
}

//réduit l'image pour qu'elle tienne sur l'écran
function zoomout(node) {
	if (img_largeur>img_hauteur) {
		//l'image est de type paysage
		node.style.width='792px';
		node.style.height = 'auto';
		node.className = 'zoomin';

		if (node.offsetHeight>img_hauteur_min && (node.offsetHeight + getOffsettop(node, 0))> hauteur_fenetre) {
			//On as pas assez réduit l'image : Elle dépasse quand même
			node.style.height = img_hauteur_min+'px';
			node.style.width='auto';
		}
	} else {
		//l'image est de type portrait
		node.style.height = img_hauteur_min+'px';
		node.style.width='auto';
		node.className = 'zoomin';

		if (node.offsetWidth>792 && (node.offsetWidth + getOffsetleft(node, 0))> largeur_fenetre) {
			//On as pas assez réduit l'image : Elle dépasse quand même
			node.style.width='792px';
			node.style.height = 'auto';

		}
	}
	node.onclick=function(){zoomin(this);};
}

//Affichage l'image taille réelle
function zoomin(node) {
	node.style.width='auto';
	node.style.height = 'auto';
	node.className = 'zoomout';
	node.onclick=function(){zoomout(this);};
}


//Activation au chargement de la page
addEvent(window,"load",MiseEnPlace);

//recherche de l'offset
function getOffsetleft(objet, offset){
	if(objet.offsetParent != null){
		var newOffset = objet.offsetLeft;
		return(getOffsetleft(objet.offsetParent, offset+newOffset));
	}else{
		return(offset);
	}
}
function getOffsettop(objet, offset){
	if(objet.offsetParent != null){
		var newOffset = objet.offsetTop;
		return(getOffsettop(objet.offsetParent, offset+newOffset));
	}else{
		return(offset);
	}
}

