﻿
// border in pixel:
var popupBorderX = 50;
var popupBorderY = 30;
// border in % (use 0 for using pixel data):
var popupBorderXPro = 10;
var popupBorderYPro = 8;
// min size:
var popupMinX = 550;
var popupMinY = 300;



function wonderspell_showObject(object) {
	if (typeof object == "string") object = document.getElementById(object);
	if (object) {
		object.className = "wonderspell_visible";
		return true;
	}
	else return false;
}

function wonderspell_hideObject(object) {
	if (typeof object == "string") object = document.getElementById(object);
	if (object) {
		object.className = "wonderspell_invisible";
		return true;
	}
	else return false;
}


function wonderspell_openContentPage() {
	wonderspell_showObject("wonderspell_contentPageShadowDiv");
	if (!wonderspell_showObject("wonderspell_contentPage")) alert("Error: wonderspell_contentPage not found (function wonderspell_openContentPage)");
}

function wonderspell_closeContentPage() {
	if (!wonderspell_hideObject("wonderspell_contentPage")) alert("Error: wonderspell_contentPage not found (function wonderspell_closeContentPage)");
	wonderspell_hideObject("wonderspell_contentPageShadowDiv");
}

function wonderspell_init() {
	wonderspell_resize();
}

function wonderspell_resize() {
	var size = getWindowSize();
	wonderspell_resizePopup(size);
}


function wonderspell_start(url, url2, ref, para) {
	wonderspell_resize();
	url2 = escape(url2);
	ref = escape(ref);
	var iframe = document.getElementById("wonderspell_iframe");
	iframe.src = url + "?url=" + url2 + "&referer=" + ref + para;
	wonderspell_openContentPage();
}

function wonderspell_resizePopup(winSize) {
	var width = 0;
	var height = 0;
	var div = "";
	
	if (document.getElementById("wonderspell_contentPage")) div = document.getElementById("wonderspell_contentPage");
	if (div && div != "") {
		if (popupBorderXPro != 0 && popupBorderYPro != 0) {
			popupBorderX = Math.round(winSize[0] / 100 * popupBorderXPro);
			popupBorderY = Math.round(winSize[1] / 100 * popupBorderYPro);
		}
		div.style.left = popupBorderX + "px";
		div.style.top = popupBorderY + "px";
		width = winSize[0] - 2*popupBorderX;
		height = winSize[1] - 2*popupBorderY;
		if (width < popupMinX) width = popupMinX;
		if (height < popupMinY) height = popupMinY;
		div.style.width = width + "px";
		div.style.height = height + "px";
	}
	
	div = "";
	if (document.getElementById("wonderspell_iframe")) div = document.getElementById("wonderspell_iframe");
	if (div && div != "") {
		div.style.width = (width - 14) + "px";
		div.style.height = (height - 14) + "px";
	}
	div = "";
	if (document.getElementById("wonderspell_contentPageShadowDiv")) div = document.getElementById("wonderspell_contentPageShadowDiv");
	if (div && div != "") {
		div.style.left = (popupBorderX-40) + "px";
		div.style.top = (popupBorderY-40) + "px";
		div.style.width = (width+80) + "px";
		div.style.height = (height+80) + "px";
	}
	div = "";
	if (document.getElementById("wonderspell_contentPageShadowLeft")) div = document.getElementById("wonderspell_contentPageShadowLeft");
	if (div && div != "") {
		div.style.height = (height) + "px";
	}
	div = "";
	if (document.getElementById("wonderspell_contentPageShadowCenter")) div = document.getElementById("wonderspell_contentPageShadowCenter");
	if (div && div != "") {
		div.style.width = (width) + "px";
		div.style.height = (height) + "px";
	}
	div = "";
	if (document.getElementById("wonderspell_contentPageShadowCenter")) div = document.getElementById("wonderspell_contentPageShadowRight");
	if (div && div != "") {
		div.style.height = (height) + "px";
	}
	div = "";
	if (document.getElementById("wonderspell_contentPageShadowBottom")) div = document.getElementById("wonderspell_contentPageShadowBottom");
	if (div && div != "") {
		div.style.width = (width) + "px";
	}
	
}



function getWindowSize() {
	var myWidth = 0, myHeight = 0;
	if (typeof( window.innerWidth ) == 'number') { 	// Non-IE
		myWidth = window.innerWidth;
		myHeight = window.innerHeight;
	}
	else if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) { // IE 6+
		myWidth = document.documentElement.clientWidth;
		myHeight = document.documentElement.clientHeight;
	}
	else if (document.body && (document.body.clientWidth || document.body.clientHeight)) { // IE 4
		myWidth = document.body.clientWidth;
		myHeight = document.body.clientHeight;
	}
	return [ myWidth, myHeight ];
}


document.onLoad = wonderspell_init();