var endX = 0;
var endY = 0;
var speed = 40;


function HoverPop_load(){
	var myBox = document.getElementById('HoverPop');
	var myPosBox = document.getElementById('HoverPopInitialPosition')
	
	// Get Current Position
	myBox.style.display = "block";
	myPosBox.style.display = "block";
	
	myOffset = findPos(myPosBox);
	endX = myOffset[0];
	endY = myOffset[1];
	
	document.getElementById("HoverPopClose").onclick = function(){
	HoverPop_closeBox();
	}

//	alert(endX + "/" + endY)
	myTimer = setInterval("moveBox(document.getElementById('HoverPop'), endX, endY, speed)", 50);
	
} // end HoverPop_load

function HoverPop_closeBox(){
document.getElementById("HoverPop").style.display = "none";
} // end HoverPop_closeBox

window.onload = function()	{
HoverPop_load();
} // end onload handler

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];
}

function moveBox(target, destinationLeft, destinationTop, maxSpeed){
	var currentLeft = parseInt(retrieveComputedStyle(target, "left"));
	var currentTop = parseInt(retrieveComputedStyle(target, "top"));

	if(isNaN(currentLeft)){
		currentLeft = 0;
	}

	if(isNaN(currentTop)){
		currentTop = 0;
	}

	if(currentLeft < destinationLeft){
		currentLeft += maxSpeed;
		if(currentLeft > destinationLeft){
		currentLeft = destinationLeft;
		}
	}else{
		currentLeft -= maxSpeed;
		
		if(currentLeft < destinationLeft){
			currentLeft = destinationLeft;
		}
	}
	
	if(currentTop < destinationTop){
		currentTop += maxSpeed;

		if(currentTop > destinationTop){
		currentTop = destinationTop;
		}
	}else{
		currentTop -= maxSpeed;

		if(currentTop < destinationTop){
		currentTop = destinationTop;
		}
	}
	
	target.style.left = currentLeft + "px";
	target.style.top = currentTop + "px";

	if(currentLeft == destinationLeft && currentTop == destinationTop){
	clearInterval(myTimer);
	}
	
	if(speed > 10){
	speed-=2;
	}
	
} // end moveBox

function retrieveComputedStyle(element, styleProperty){
	var computedStyle = null;
	if(typeof element.currentStyle != "undefined"){
		computedStyle = element.currentStyle;
	}else{
		computedStyle = document.defaultView.getComputedStyle(element, null);
	}
	return computedStyle[styleProperty];
} // end retrieveComputedStyle