popupborderstyle = '';	// retient le style de bordure


/* Charge la page en AJAX et met le contenu dans la popup */
/* Le lien est de la forme "truc.html?page=X" */
/* quoiqu'on doit pouvoir se contenter de "page=X" */
function callPopupDiv(lien){
	var resultpage = lien.search(/page=/);
	var resultpageinst = lien.search(/pageinst=/);
	
	if (resultpage != -1){
		var page = lien.substr(resultpage+5,lien.length-resultpage-5);
		sendAjax("/popupdiv.cfm?page="+page, self.popupDivLoaded, 'get', '', []);
	}
	else if (resultpageinst != -1) {
		var page = lien.substr(resultpageinst+9,lien.length-resultpageinst-9);
		sendAjax("/popupdiv.cfm?pageinst="+page, self.popupDivLoaded, 'get', '', []);
	}
	else{
		//alert("popupimg");
		placepopupimg(lien);
	}
}

function callPopupDivAjax(lien){
	sendAjax(lien, self.popupDivLoaded, 'get', '', []);
}
/* affiche une page de gestion de contenu en se basant sur pageinst */
function callPopupDivPageinst(pk){
	sendAjax("/popupdiv.cfm?pageinst="+pk, self.popupDivLoaded, 'get', '', []);
}

/* Fonction callback pour callPopupDiv */
function popupDivLoaded(text, xml, params){
	openpopup(text);
}

/* affiche la popup en y placant l'image dont l'url est tirée de l'attribut 'bigimg' de l'objet passé en paramètre */
function placepopup(thumb) {
	var popup = document.getElementById('popup');
	var popupcontent = document.getElementById('popupcontent');
	var content = '<img id="popupimg" src="'+ thumb.getAttribute('bigimg') +'" style="vertical-align:bottom;" />';
	
	popupcontent.innerHTML = content;
	popup.onmousedown=dragstart;
	popup.onmouseup=dragend;
	popup.onmousemove=dragmove;
	popup.onmouseout=dragmouseout;
	popup.ondragstart = function() { return false; };
	var scrolloff = getScrollOffset();
	popup.style.left = '130px';
	window.status = "scrolly="+scrolloff[1];
	popup.style.top = (scrolloff[1]+10)+'px';
	popup.style.cursor = 'move';
	//popup.style.display = 'block';
	popup.style.visibility = 'visible';
	
	checkimgload(popupcontent);
	setTimeout("checkpopupload()", 100);
}

/* affiche la popup en y mettant l'image dont l'url est passée en paramètre */
function placepopupimg(thumb) {
	var popup = document.getElementById('popup');
	var popupcontent = document.getElementById('popupcontent');
	//popup.style.left = '0px';
	var content = '<img id="popupimg" src="'+ thumb +'" style="vertical-align:bottom;" />';
	
	popupcontent.innerHTML = content;
	popup.onmousedown=dragstart;
	popup.onmouseup=dragend;
	popup.onmousemove=dragmove;
	popup.onmouseout=dragmouseout;
	popup.ondragstart = function() { return false; };
	var scrolloff = getScrollOffset();
	popup.style.left = '10px';
	window.status = "scrolly="+scrolloff[1];
	popup.style.top = (scrolloff[1]+10)+'px';
	popup.style.cursor = 'move';
	/*popup.style.display = 'block';*/
	popup.style.visibility = 'visible';
	popup.style.width = '';
	popup.style.height = '';
	popup.style.overflow = '';
	/*if (!popupborderstyle) {
		alert("notdefined : "+popupborderstyle+" ; "+popup.style.border);
		popupborderstyle = popup.style.border;	
	}*/
	/*popup.style.border = '';*/
	//popup.style.removeAttribute("border",false);
	/*popup.style.borderStyle='';*/
	popup.style.borderWidth='';
	
	checkimgload(popupcontent);
	
	setTimeout("checkpopupload()", 100);
}

/* ouvre la popupdiv et y place une iframe qui charge l'url indiquée */
function openpopupiframe(url, width, height, transparent, scrolling) {
	var content = "<iframe id='popupiframe' marginwidth='0' marginheight='0' src='"+url+"' width='"+width+"' height='"+height+"' frameborder='0' vspace='0' hspace='0'";
	if (scrolling == false){
		content = content + " scrolling='no'";	
	}
	
	if (transparent == true) {
		content = content + " allowTransparency='true'";	
	}
	content = content + ">";
	
	
	
	/*alert(content);*/
	openpopup(content);
}

/* ouvre la popup et y place le contenu HTML fourni */
function openpopup(content) {
	var popup = document.getElementById('popup');
	var popupcontent = document.getElementById('popupcontent');
	
	popup.style.visibility = 'hidden';
	
	popupcontent.innerHTML = content;
	executeJavascript(popupcontent);
	popup.onmousedown=dragstart;
	popup.onmouseup=dragend;
	popup.onmousemove=dragmove;
	popup.onmouseout=dragmouseout;
	popup.ondragstart = function() { return false; };
	var scrolloff = getScrollOffset();
	/*if (popup.style.left == '') {
		popup.style.left = '130px';
	}*/
	window.status = "scrolly="+scrolloff[1];
	//if (popup.style.top == '') {
		popup.style.top = (scrolloff[1]+10)+'px';
	//}
	/*popup.style.cursor = 'move';*/
	
	/*popup.style.visibility = 'visible';*/
	
	popup.style.width = '';
	popup.style.height = '';
	popup.style.overflow = '';
	popup.style.borderWidth='';
	
	checkimgload(popupcontent);
	
	setTimeout("checkpopupload()", 100);
}

function addEvent(obj, ev, fn) {
	if (obj.addEventListener) {
		obj.addEventListener(ev, fn, false);
	} else if (obj.attachEvent) {
		obj.attachEvent('on' + ev, fn);
	}
}

/**	Ajoute un onLoad aux images (img) trouvées dans l'objet passé en paramètre
*/
function checkimgload(obj) {
	var imgs = obj.getElementsByTagName('img');
	var n = imgs.length;
	while (n--) {
		addEvent(imgs[n], 'load', imgLoad);
	}
}

function imgLoad(e) {
	if (!e) var e = window.event;
	// note: I don't know which is correct, but moz reports e.target as being the document and e.currentTarget as the image
	// opera says both e.target and e.currentTarget are the img - which is what I would've expected...
	// IE doesn't have the concept of a currentTarget, but srcElement (its version of target) points at the img element
	var target = e.currentTarget || e.srcElement;
	
	//alert(target.src + ' is loaded');
	window.status = target.src + ' is loaded';
	checkpopupload();
}

function closepopup() {
	var popup = document.getElementById('popup');
	var popupcontent = document.getElementById('popupcontent');
	popupcontent.innerHTML = "";
	/*popup.style.display = 'none';*/
	/*popup.style.visibility = 'hidden';*/

	/*popupborderstyle = popup.style.border;
	alert(popup.style.border+","+popup.style.borderStyle+","+popup.style.borderColor+","+popup.style.borderWidth+","+popup.style.borderLeft+","+popup.style.borderLeftWidth);
	alert("changed : "+popupborderstyle);
	*/

	popup.style.width = '0';
	popup.style.height = '0';
	popup.style.overflow = 'hidden';
	/*popup.style.borderStyle = '';*/
	popup.style.borderWidth = '0';
	
}
/*function movepopup() {
	var popup = document.getElementById('popup');
	window.status = "truh";
}*/


function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}


dragmode = 0;

IE = document.all?true:false

function dragstart(evt) {
	document.body.focus();	// permet de d�selectionner un �ventuel texte s�lectionn�
	//alert("NOON");
	dragmode = 1;
	window.status = 'drag';
	//var obj = document.getElementById('movingimg');
	//obj.onselectstart = function () { return false; };
	//return false;
	var mpos = getMousePos(evt);
	var obj = document.getElementById('popup');
	var objpos = findPos(obj);
	clicx = mpos[0]-objpos[0];	// point de l'image cliqu�
	clicy = mpos[1]-objpos[1];
	window.status=clicx+','+clicy;
	return false;
}
function dragend() {
	dragmode = 0;
	window.status = '';
}
function dragmove(evt) {
	//window.status=evt.button;
	if (dragmode == 1) {
		var mpos = getMousePos(evt);
		var obj = document.getElementById('popup');
		var objpos = findPos(obj);
		//window.status = objpos[0]+','+objpos[1]+' ; '+mpos[0]+','+mpos[1]+' ... '+obj.width+','+obj.height;
		// tempX/Y indique la position absolue de la souris
		//var imgs = obj.getElementsByTagName('img');
		obj.style.left = (mpos[0] - clicx)+'px';
		obj.style.top = (mpos[1] - clicy)+'px';
	}
}

function dragmouseout() {
	dragmode=0;
}

function checkpopupload() {
	var img = document.getElementById('popupimg');
	var popup = document.getElementById('popup');
	
	window.status = "popupwidth:"+popup.offsetWidth;
	
	if (img && img.width > 0) {
		var NS = (navigator.appName=="Netscape")?true:false; 
		iWidth = (NS)?window.innerWidth:document.documentElement.clientWidth;
		iHeight = (NS)?window.innerHeight:document.documentElement.clientHeight;
		//alert(iWidth+','+(iWidth/2-img.width/2));
		popup.style.left = (iWidth/2-img.width/2)+'px';
		
		popup.style.visibility = 'visible';
	}
	else if (popup && popup.offsetWidth > 0) {
		var NS = (navigator.appName=="Netscape")?true:false; 
		iWidth = (NS)?window.innerWidth:document.documentElement.clientWidth;
		iHeight = (NS)?window.innerHeight:document.documentElement.clientHeight;
		//alert(iWidth+','+(iWidth/2-img.width/2));
		popup.style.left = (iWidth/2-popup.offsetWidth/2)+'px';
		
		var scrolloff = getScrollOffset();
		window.status = "scrolly="+scrolloff[1];
		popup.style.top = (scrolloff[1]+iHeight/2-popup.offsetHeight/2)+'px';
		
		popup.style.visibility = 'visible';
	}
	else {
		setTimeout("checkpopupload()", 100);
	}
}

function getMousePos(evt) {
	if (IE) { // grab the x-y pos.s if browser is IE
		var tempX = event.clientX + document.body.scrollLeft;
		var tempY = event.clientY + document.body.scrollTop;
	} else {  // grab the x-y pos.s if browser is NS
		var tempX = evt.pageX;
		var tempY = evt.pageY;
	}
	return [tempX,tempY];
}

function getScrollOffset() {
	if (IE) { // grab the x-y pos.s if browser is IE
		var tempX = document.documentElement.scrollLeft;
		var tempY = document.documentElement.scrollTop;
	} else {  // grab the x-y pos.s if browser is NS
		var tempX = window.pageXOffset;
		var tempY = window.pageYOffset;
	}
	return [tempX,tempY];
}


