// (C) Mainostoimisto Fabrik Oy | http://www.fabrik.fi
var pageLoaded = false;
window.onload = function(){
	var p = document.createElement("<DIV>");
		p.id = "popuplarger";
		p.innerHTML = '<div class="load"><img src="images/blank.gif" id="imagelarger" width="460" height="354" border="0" alt="" onload="fadeinLarger();" onclick="showLarger();" onmouseover="floater(\'Sulje\')" onmouseout="floater()"></div>';
	document.body.appendChild(p);
	var f = document.createElement("<DIV>");
		f.id = "textfloater";
	document.body.appendChild(f);

	if(document.all){
		document.onmousemove = function () {
			var f = document.getElementById('textfloater');
			var newX = event.clientX-(f.scrollWidth/2)+10;
				newX = (newX < 0 ? 0 : (newX+f.scrollWidth > document.body.scrollWidth ? document.body.scrollWidth-f.scrollWidth : newX));
			var newY = event.clientY+document.body.scrollTop+20;
				newY = (newY+f.scrollHeight > frameElement.scrollHeight+document.body.scrollTop ? newY-f.scrollHeight-30 : (newY < 0 ? 0 : newY));
			f.style.left = newX+"px";
			f.style.top = newY+"px";
		}
	} else {
		document.onmousemove = function (event) {
			var f = document.getElementById('textfloater');
			var newX = event.clientX-(f.scrollWidth/2)+10;
				newX = (newX < 0 ? 0 : (newX+f.scrollWidth > document.body.scrollWidth ? document.body.scrollWidth-f.scrollWidth : newX));
			var newY = event.clientY+document.body.scrollTop+20;
				newY = (newY+f.scrollHeight > frameElement.scrollHeight+document.body.scrollTop ? newY-f.scrollHeight-30 : (newY < 0 ? 0 : newY));
			f.style.left = newX+"px";
			f.style.top = newY+"px";
		}
	}
	pageLoaded = true;
}

// popup
var largerOpacity = 0;
var largerTargetX = 0;
var largerTargetY = -400;
function showLarger(s,e){
	if(!pageLoaded) return false;
	var p = document.getElementById('popuplarger');
	var i = document.getElementById('imagelarger');
	i.src = "images/blank.gif";
	if(!s){
		p.style.display = "none";
		p.style.left = "0px";
		p.style.top = "-400px";
		return;
	}
	var x = e.clientX;
	var y = e.clientY;
	
	var newX = Math.round(x-(480/2));
		newX = (newX < 0 ? 0 : (newX+480 > document.body.scrollWidth ? document.body.scrollWidth-480 : newX));
	var newY = y+document.body.scrollTop-200;
		newY = (newY+374 > frameElement.scrollHeight+document.body.scrollTop ? frameElement.scrollHeight+document.body.scrollTop-374 : (newY < 0 ? 0 : newY));
	
	largerTargetX = newX;
	largerTargetY = newY;
	largerOpacity = 0;
	if(document.all){
		i.style.filter = "alpha(opacity = 0)";
	} else {
		i.style.opacity = 0;
	}
	moveLarger();
	p.style.display = "block";
	setTimeout(function () {i.src = s;},200);
}
var fadeTimerLarger = null;
function fadeinLarger(){
	clearTimeout(fadeTimerLarger);
	var i = document.getElementById('imagelarger');
	if(i.src.indexOf("blank.gif") > -1){
		return;
	}
	largerOpacity = (largerOpacity+10 < 100 ? largerOpacity+10 : 100);
	if(largerOpacity <= 100){
		if(document.all){
			i.style.filter = "alpha(opacity = "+largerOpacity+")";
		} else {
			i.style.opacity = (largerOpacity/100);
		}
		fadeTimerLarger = setTimeout(fadeinLarger,1);
	}
}
var moveTimerLarger = null;
function moveLarger(){
	clearTimeout(moveTimerLarger);
	var p = document.getElementById('popuplarger');
	var currentX = p.offsetLeft;
	var currentY = p.offsetTop;
	var newXadd = Math.round((largerTargetX-currentX)/2)-1;
	var newYadd = Math.round((largerTargetY-currentY)/2)-1;
	if(currentX != largerTargetX || currentY != largerTargetY){
		p.style.left = (currentX+newXadd)+"px";
		p.style.top = (currentY+newYadd)+"px";
		moveTimerLarger = setTimeout(moveLarger,1);
	}
}

// Floater
var floaterOpacity = 100;
var floaterOn = false;
function floater(txt){
	if(!pageLoaded) return false;
	var f = document.getElementById('textfloater');
	if (!txt) {
		floaterOn = false;
		fadeOutFloater();
	} else {
		floaterOpacity = 100;
		floaterOn = true;
		f.innerHTML = txt;
		f.style.display = "block";
	}
}

var fadeTimerFloater = null;
function fadeOutFloater(){
	clearTimeout(fadeTimerFloater);
	var f = document.getElementById('textfloater');
	if(floaterOn) {
		if(document.all){
			f.style.filter = "";
		} else {
			f.style.opacity = 1.0;
		}
		return;
	}
	floaterOpacity = (floaterOpacity-10 > 0 ? floaterOpacity-10 : 0);
	if(floaterOpacity >= 0){
		if(document.all){
			f.style.filter = "alpha(opacity = "+floaterOpacity+")";
		} else {
			f.style.opacity = (floaterOpacity/100);
		}
		fadeTimerFloater = setTimeout(fadeOutFloater,1);
	}
}