var x;
var y;
var currentScale=0;
var initScale=0;

if (navigator.appName=='Netscape') {
	document.captureEvents(Event.MOUSEMOVE);
	document.onmousemove=NetscapeMouseMove;
	var pos=Array();
}

/*
if (window.Event) {
	document.captureEvents(Event.MOUSEMOVE);
}
document.onmousemove = getXY;
    */
function NetscapeMouseMove(e) {
	pos[0]=e.clientX + document.body.scrollLeft;
	pos[1]=e.clientY + document.body.scrollTop;
}

function getXY(e) {
	var navx, navy;
	var width;
	var hg=document.images['mapsrc'];
	anotherTrueX = getRealLeft(hg);
	anotherTrueY = getRealTop(hg);

   if (navigator.appName=='Netscape') {
		navx=pos[0];
		navy=pos[1];
	}
	else {
		navx=event.clientX;
		navy=event.clientY;
		if (!e) var e = window.event;
		if (e.pageX || e.pageY) {
			navx=e.pageX;
			navy=e.pageY;
		}
		else if (e.clientX || e.clientY) {
			navx=e.clientX + document.body.scrollLeft;
			navy=e.clientY + document.body.scrollTop;
		}
	}
	wgSX = document.documentElement.scrollLeft;
	wgSY = document.documentElement.scrollTop;
	x=navx-anotherTrueX+wgSX;
	y=navy-anotherTrueY+wgSY;
}

function getRealLeft(el) {
	if (arguments.length==0) el = this;
	xPos = el.offsetLeft;
	tempEl = el.offsetParent;
	while (tempEl != null) {
		xPos += tempEl.offsetLeft;
		tempEl = tempEl.offsetParent;
	}
	return xPos;
}

function getRealTop(el) {
	if (arguments.length==0) el = this;
	yPos = el.offsetTop;
	tempEl = el.offsetParent;
	while (tempEl != null) {
		yPos += tempEl.offsetTop;
		tempEl = tempEl.offsetParent;
	}
	return yPos;
}

function getShopPage(layerName,func,paramA, paramB,member_id,scale) {
	if (layerName=='map') {
		document.getElementById(layerName).innerHTML='<table width="500" height="500"><tr><td height="100" align="center" valign="middle"><img src="images/loading.gif"></td></tr><tr><td height=400></td></tr></table>'; 
	}	
	if (scale==0) scale=initScale; 
	var page='proxy.php?function='+func+'&paramA='+paramA+'&paramB='+paramB+'&x='+x+'&y='+y+'&member_id='+member_id+'&scale='+scale;
	    page=encodeURI(page);      	 	
        http_request = false;
        if (window.XMLHttpRequest) { // Mozilla, Safari,...
                http_request = new XMLHttpRequest();
                if (http_request.overrideMimeType) {
                        http_request.overrideMimeType('text/xml');
                }
        } else if (window.ActiveXObject) { // IE
                try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
                }
        }
	 // alert(page);
	
        if (!http_request) {
                alert('Abandon :( Impossible de créer une instance XMLHTTP');
                return false;
        }
        http_request.onreadystatechange = function() {
                if (http_request.readyState == 4 && http_request.status == 200) {
              		if (document.images['zoom10']) zoomLevel('zoom'+scale,scale,2);
				if (func=='emptybag') {
					getShopPage('map','getMap','','',member_id,scale);
				}
				else {
                  			document.getElementById(layerName).innerHTML= http_request.responseText;
                  			if (func=='getTile') {
                  					getShopPage('shop','mapList',null,null,member_id,scale);
                  					// getPage('verticalMenu','main.php?action=interface_getLinks','');
						}		
						if (func=='getMap') {
							getShopPage('shop','mapList',null,null,member_id,scale);
							initImage('mapsrc');
						}
				}
			}
        }
        http_request.open('GET', page, true);
        http_request.send(null);
}

function initImage(imageId) {
	  image = document.getElementById(imageId);
	  setOpacity(image, 0);
	  image.style.visibility = 'visible';
	  fadeIn(imageId,0);
}
	
function setOpacity(obj, opacity) {
	opacity = (opacity == 100)?99.999:opacity;
	  
	// IE/Win
	obj.style.filter = "alpha(opacity:"+opacity+")";
	
	// Safari<1.2, Konqueror
	obj.style.KHTMLOpacity = opacity/100;
	
	// Older Mozilla and Firefox
	obj.style.MozOpacity = opacity/100;
	
	// Safari 1.2, newer Firefox and Mozilla, CSS3
	obj.style.opacity = opacity/100;
}

function fadeIn(objId,opacity) {
	if (document.getElementById) {
		obj = document.getElementById(objId);
		if (opacity <= 100) {
			setOpacity(obj, opacity);
			opacity += 10;
			window.setTimeout("fadeIn('"+objId+"',"+opacity+")", 100);
		}
	}
}
function fadeOut(objId,opacity) {
	if (document.getElementById) {
		obj = document.getElementById(objId);
		if (opacity >=0 ) {
			setOpacity(obj, opacity);
			opacity -= 10;
			window.setTimeout("fadeOut('"+objId+"',"+opacity+")", 100);
		}
	}
}

function centerMap(coordTxt,member_id) {
	tmpStr = coordTxt.toLowerCase();
	sep = tmpStr.indexOf(';');	
	x=tmpStr.substr(0,sep);
	y=tmpStr.substr(sep+1);
	// if (document.images['zoom10']) zoomLevel('zoom10',10,2);
	getShopPage('map','getMap',x,y,member_id,10);
}	

function mapDelete(coordTxt,id,member_id) {
	page='proxy.php?function=mapDelete&member_id='+member_id+'&id='+id;
	getPage('shop',page,'');
	tmpStr = coordTxt.toLowerCase();
	sep = tmpStr.indexOf(';');	
	x=tmpStr.substr(0,sep);
	y=tmpStr.substr(sep+1);
	getShopPage('map','getMap',x,y,member_id,46);
}	

function zoomLevel(imageName,scale,zvalue) {
	if (initScale=='0') initScale=46;
	document.images['zoom46'].src='images/zoom.png';
	document.images['zoom28'].src='images/zoom.png';
	document.images['zoom14'].src='images/zoom.png';
	document.images['zoom10'].src='images/zoom.png';
	if (zvalue==0) { // mouseOut
		document.images['zoom'+scale].src='images/zoom.png';
		document.images['zoom'+initScale].src='images/zoom_on.png';
	}	
	if (zvalue==1) { // mouseOn
		document.images['zoom'+scale].src='images/zoom_on.png';
	}	
	if (zvalue==2) { // mouseClick
		document.images['zoom'+scale].src='images/zoom_on.png';
		initScale=scale;
	}	
}	
