// author by : sunzhy. email: sunzhyng@hotmail.com
// circle image Map. get the cursor's position, and set float layer position

function getAbsLeft(e){var l=e.offsetLeft; while(e=e.offsetParent) l += e.offsetLeft; return l;}
function getAbsTop(e) {var t=e.offsetTop; while(e=e.offsetParent) t += e.offsetTop; return t;}

function getXAdd()
{
	try{
var d = document.getElementById("epapermap");
//alert("top : "+ getAbsTop(d)+"left : "+ getAbsLeft(d));
//alert(getAbsLeft(d));
return  getAbsLeft(d);
	}catch(e){}return 0;
}
 
function getYAdd()
{
		try{
	var d = document.getElementById("epapermap");
	//alert("top : "+ getAbsTop(d)+"left : "+ getAbsLeft(d));
	//alert(getAbsLeft(d));
	return  getAbsTop(d);
	}catch(e){}return 0;
}

function drawLine()
{
	if (document.readyState!="complete") return ; 
	var elm = event.srcElement;
	var str = elm.coords;
	if(!str) return;
	var arr = str.split(",");
	var xArr = new Array(arr.length/2);
	var yArr = new Array(arr.length/2);
	var x=0,y=0;
	var max =1,min =2;
	for (var t =0 ;t<arr.length ;t=t+2 )
	{
		xArr[x++] = parseInt(arr[t]);
	}
	for (var t =1 ;t<arr.length ;t=t+2 )
	{
		yArr[y++] = parseInt(arr[t]);
	}
	var x1 = find(xArr,min);
	var x2 = find(xArr,max);
	var y1 = find(yArr,min);
	var y2 = find(yArr,max);

	var objMapBox = document.getElementById("frameMap");
	if(!objMapBox)
	{
		objMapBox = document.createElement('DIV');
		objMapBox.setAttribute("id","frameMap");
		document.body.appendChild(objMapBox);
		objMapBox.className = "fmap";
	}
	objMapBox.style.position = "absolute";
	objMapBox.style.left = x1 + getXAdd() + 5;
	objMapBox.style.top = y1 + getYAdd() + 5;
	objMapBox.style.width = x2 - x1 + 10;
	objMapBox.style.height = y2 - y1 + 8; 
	objMapBox.style.display = "block";
	
	var elmId = elm.href;
	var idx1 = elmId.indexOf("_");
	elmId = elmId.substring(idx1, elmId.length);
	var idx2 = elmId.indexOf(".");
	elmId = elmId.substring(1, idx2);
	showPanleTitle(elmId);
}

function showPanleTitle(eid)
{
	var elmA = document.getElementById("mp_" + eid);
	if(elmA)
	{
		//var xposition = event.screenX; // + document.body.scrollLeft - document.body.clientLeft + 3;
		//var yposition = event.screenY; // + document.body.scrollTop - document.body.clientTop;
		var xposition = document.body.scrollLeft + event.clientX;
		var yposition = IeTrueBody().scrollTop + event.clientY;
		var objTitle = document.getElementById("panelTitle");
		if(!objTitle)
		{
			objTitle = document.createElement('DIV');
			objTitle.setAttribute("id", "panelTitle");
			document.body.appendChild(objTitle);
			objTitle.className = "ptitle";
		}
		objTitle.style.position = "absolute";
		objTitle.style.left = xposition;
		objTitle.style.top = yposition;
		objTitle.innerHTML = elmA.innerText;
		objTitle.style.display = "block";
	}
}

function IeTrueBody()
{
	return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}

function reaseLine()
{
	if (document.readyState!="complete") return ; 
	var objMapBox = document.getElementById("frameMap");
	if(objMapBox)
		objMapBox.style.display = "none";
	var objTitle = document.getElementById("panelTitle");
	if(objTitle)
		objTitle.style.display = "none";
}

function find(arr,type)
{
	var tmp=arr[0]; 
	if (type==1)
	{
		for (var loop=0;loop<arr.length ;loop++ )
		if (arr[loop]>tmp)
			tmp = arr[loop];
		return tmp;
	}
	else if (type == 2)
	{
		for (var loop=0;loop<arr.length ;loop++ )
		if (arr[loop]<tmp)
			 tmp = arr[loop];
		return tmp;
	}
}

function printIt()
{
	window.print();
}

function favorIt()
{
	window.external.AddFavorite(document.URL, document.title); 
}