﻿//
// WEB SMALL POPUP

var WebPopTimer = "";

function showWebPopup(e) {
	var popWeb = document.getElementById('webpop');
	var btnWeb = document.getElementById('web');


	if (moveanim.timer != null) {
		clearInterval(moveanim.timer);
		moveanim.timer = null;
	}

	// Determine where we should pop up in relation to the dynamic button
 
	position = findElementPos(btnWeb);
	popWeb.style.top = (position[1] - (popWeb.offsetHeight - 40)) +"px";
	popWeb.style.left = "180" + "px";

	// If already trigger a rollover, cancel it because we're back in

	if (WebPopTimer != "")
	{
		clearTimeout(WebPopTimer);
		WebPopTimer = "";
	} else {
		setOpacity(0, 'webpop');
		popWeb.style.visibility = 'visible';
		moveStart(popWeb, parseInt(popWeb.style.left), parseInt(popWeb.style.left), parseInt(popWeb.style.top) + 10, parseInt(popWeb.style.top), 15);
		fadeElementSetup('webpop', 0, 100, 13);
	}
}

function hideWebPopup() {
	// Start timer to hide the pop-up and the overlay
	WebPopTimer = setTimeout("WebPopupActuallyHide()", 500);
}

function WebPopupActuallyHide() {
	var popWeb = document.getElementById('webpop');
	if (WebPopTimer != "")
	{
		WebPopTimer = "";
		moveStart(popWeb, parseInt(popWeb.style.left), parseInt(popWeb.style.left), parseInt(popWeb.style.top), parseInt(popWeb.style.top) - 10, 15);		
		fadeElementSetup('webpop', 100, 0, 13, 1);
	}
}

//
// MOVE: Animate the move of an element.
//
// Move is also synchronous. One at a time, please.
//

var moveanim = {time:0, beginX:0, changeX:0.0, beginY:0, changeY:0, duration:0.0, element:null, timer:null};

function moveStart(elem, startX, endX, startY, endY, duration)
{
	if (moveanim.timer != null) {
		clearInterval(moveanim.timer);
		moveanim.timer = null;
	}
	moveanim.time = 0;
	moveanim.beginX = startX;
	moveanim.changeX = endX - startX;
	moveanim.beginY = startY;
	moveanim.changeY = endY - startY;
	moveanim.duration = duration;
	moveanim.element = elem;

	moveanim.timer = setInterval("moveAnimDo();", 15);
}

function moveAnimDo()
{
	if (moveanim.time > moveanim.duration) {
		clearInterval(moveanim.timer);
		moveanim.timer = null;
	}
	else {
		moveX = cubicOut(moveanim.time, moveanim.beginX, moveanim.changeX, moveanim.duration);
		moveY = cubicOut(moveanim.time, moveanim.beginY, moveanim.changeY, moveanim.duration);
		moveanim.element.style.left = moveX + "px";
		moveanim.element.style.top = moveY + "px";
		moveanim.time++;
	}
}


//console.log("Initialized");