var pageRoot = "none";

function popWin(url)
{
	var refWin = window.open(url, "refwin", "width=820,height=600,scrollbars");
	refWin.focus();
}

function escapeHTML(input)
{
	var	str = input;
	str = str.replace(/&/g, "&amp;");
	str = str.replace(/"/g, "&quot;");
	str = str.replace(/>/g, "&gt;");
	str = str.replace(/</g, "&lt;");
	return	str;
}

function isEmailAddr(elem)
{
	var	re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
	return	elem.value.match(re);
}

function isNotEmpty(elem)
{
	var	re = /\S/;
	return	elem.value.match(re);
}

function cookieGet(name)
{
	var	arg = name + "=";
	var	alen = arg.length;
	var	clen = document.cookie.length;
	var	i = 0;
	while (i < clen) {
		var	j = i + alen;
		if (document.cookie.substring(i, j) == arg)
			return	cookieGetVal(j);
		i = document.cookie.indexOf(" ", i) + 1;
		if (i == 0)
			break;
	}
	return	"";
}

function cookieGetVal(offset)
{
	var	endstr = document.cookie.indexOf(";", offset);
	if (endstr == -1)
		endstr = document.cookie.length;
	return	unescape(document.cookie.substring(offset, endstr));
}

function cookieSet(name, value, expires, path, domain, secure)
{
	document.cookie = name + "=" + escape(value) +
		((expires) ? "; expires=" + expires : "") +
		((path) ? "; path=" + path : "") +
		((domain) ? "; domain=" + domain : "") +
		((secure) ? "; secure" : "");
}

function cookieDelete(name, path, domain)
{
	if (cookieGet(name))
		cookieSet(name, path, domain, "Thu, 01-Jan-70 00:00:01 GMT");
}

function getExpDate(days, hours, minutes)
{
	var	expDate = new Date();
	if (typeof days == "number" && typeof hours == "number" && typeof minutes == "number") {
		expDate.setDate(expDate.getDate() + parseInt(days));
		expDate.setHours(expDate.getHours() + parseInt(hours));
		expDate.setMinutes(expDate.getMinutes() + parseInt(minutes));
		return	expDate.toGMTString();
	}
}

function	countdown(counterID, year, month, day, hour, min, sec)
{
	today = new Date();
	lastday = Date.UTC(year, month - 1, day, hour, min, sec);
	ttsecdiff = Math.floor((lastday - today) / 1000);
	if (ttsecdiff >= 0) {
		daydiff = Math.floor(ttsecdiff / 3600 / 24);
		hourdiff = Math.floor(ttsecdiff / 3600) % 24;
		mindiff = Math.floor(ttsecdiff / 60) % 60;
		secdiff = ttsecdiff % 60;
	} else {
		daydiff = 0;
		hourdiff = 0;
		mindiff = 0;
		secdiff = 0;
	}
	var CountDownDay = document.getElementById(counterID + "CountDownDay");
	var CountDownHour = document.getElementById(counterID + "CountDownHour");
	var CountDownMin = document.getElementById(counterID + "CountDownMin");
	var CountDownSec = document.getElementById(counterID + "CountDownSec");
	if (CountDownDay) {
		CountDownDay.innerHTML = (daydiff < 100 ? "&nbsp;" : "") + (daydiff < 10 ? "&nbsp;" : "") + daydiff;
		CountDownHour.innerHTML = (hourdiff < 10 ? "0" : "") + hourdiff;
		CountDownMin.innerHTML = (mindiff < 10 ? "0" : "") + mindiff;
		CountDownSec.innerHTML = (secdiff < 10 ? "0" : "") + secdiff;
	}
}

function slideGetImage(slides, i, layer)
{
	img = document.getElementById(slides.id + "ImgLayer" + layer);
	txt = document.getElementById(slides.id + "TxtLayer" + layer);
	src = document.getElementById(slides.id + "ImgSrc" + i);
	attr = document.getElementById(slides.id + "ImgAttr" + i);
	content = document.getElementById(slides.id + "TxtContent" + i);
	if (!(img && src && attr))
		return;
	w = attr.value.indexOf('w');
	h = attr.value.indexOf('h');
	img.src = src.value;
	img.width = parseInt(attr.value.substr(w + 1));
	img.height = parseInt(attr.value.substr(h + 1));
	txt.innerHTML = img.alt = img.title = content ? content.value : "";
	if (navigator.appName != "Microsoft Internet Explorer") {
		txt.style.position = "relative";
		txt.style.top = -parseInt(attr.value.substr(h + 1)) / 1.02 + "px";
		txt.style.left = "0px";
	} else {
		txt.style.position = "absolute";
		txt.style.top = -parseInt(attr.value.substr(h + 1)) / 2.04 + "px";
		txt.style.left = -parseInt(attr.value.substr(w + 1)) / 2.04 + "px";
	}
}

function slideNext(slides)
{
	with (slides) {
		if (navigator.appName == "Microsoft Internet Explorer" && filters)
			filters[0].apply();
		layer = childNodes[0].style.visibility == "hidden" ? 0 : 1;
		leng = document.getElementById(slides.id + "Length").value;
		vslide = document.getElementById(slides.id + "Displaying");
		if (vslide.value < 0 || ++vslide.value >= leng)
			vslide.value = 0;
		if (leng > 0) {
			slideGetImage(slides, vslide.value, layer);
			childNodes[layer].style.visibility = "visible";
			childNodes[1-layer].style.visibility = "hidden";
			if (navigator.appName == "Microsoft Internet Explorer" && filters)
				filters[0].play();
			slideGetImage(slides, parseInt(vslide.value) + 1 < leng ? parseInt(vslide.value) + 1 : 0, 1 - layer);
		}
	}
}

function slidePrev(slides)
{
	with (slides) {
		if (navigator.appName == "Microsoft Internet Explorer" && filters)
			filters[0].apply();
		layer = childNodes[0].style.visibility == "hidden" ? 0 : 1;
		leng = document.getElementById(slides.id + "Length").value;
		vslide = document.getElementById(slides.id + "Displaying");
		if (--vslide.value < 0)
			vslide.value = leng - 1;
		if (leng > 0) {
			slideGetImage(slides, vslide.value, layer);
			childNodes[layer].style.visibility = "visible";
			childNodes[1-layer].style.visibility = "hidden";
			if (navigator.appName == "Microsoft Internet Explorer" && filters)
				filters[0].play();
			slideGetImage(slides, vslide.value - 1 >= 0 ? vslide.value - 1 : leng - 1, 1 - layer);
		}
	}
}

function slideFirst(slides)
{
	with (slides) {
		if (navigator.appName == "Microsoft Internet Explorer" && filters)
			filters[0].apply();
		layer = childNodes[0].style.visibility == "hidden" ? 0 : 1;
		leng = document.getElementById(slides.id + "Length").value;
		vslide = document.getElementById(slides.id + "Displaying");
		if (leng > 0) {
			vslide.value = 0;
			slideGetImage(slides, vslide.value, layer);
			childNodes[layer].style.visibility = "visible";
			childNodes[1-layer].style.visibility = "hidden";
			if (navigator.appName == "Microsoft Internet Explorer" && filters)
				filters[0].play();
		}
	}
}

function slideLast(slides)
{
	with (slides) {
		if (navigator.appName == "Microsoft Internet Explorer" && filters)
			filters[0].apply();
		layer = childNodes[0].style.visibility == "hidden" ? 0 : 1;
		leng = document.getElementById(slides.id + "Length").value;
		vslide = document.getElementById(slides.id + "Displaying");
		if (leng > 0) {
			vslide.value = leng - 1;
			slideGetImage(slides, vslide.value, layer);
			childNodes[layer].style.visibility = "visible";
			childNodes[1-layer].style.visibility = "hidden";
			if (navigator.appName == "Microsoft Internet Explorer" && filters)
				filters[0].play();
		}
	}
}

function setSlideTimer(evt)
{
	evt = (evt) ? evt : (window.event ? event : null);
	if (!evt)
		return;
	elem = (evt.currentTarget) ? evt.currentTarget : ((evt.srcElement) ? evt.srcElement : null);
	if (!elem)
		return;
	id = elem.id.substring(0, elem.id.length - 9);
	slides = document.getElementById(id);
	interval = parseInt(document.getElementById(id + "Interval").value);
	dir = document.getElementById(id + "Direction").value;
	if (slides.slideTimer)
		clearTimeout(slides.slideTimer);
	slides.slideTimer = setTimeout("slidePlay(" + id + ", " + interval + ", " + dir + ");", interval * 1000);
}

function slidePlay(slides, interval, dir)
{
	document.getElementById(slides.id + "Direction").value = dir;
	layer = slides.childNodes[0].style.visibility == "hidden" ? 0 : 1;
	document.getElementById(slides.id + "ImgLayer" + layer).onload = setSlideTimer;
	document.getElementById(slides.id + "ImgLayer" + (1 - layer)).onload = null;
	if (dir > 0)
		slideNext(slides);
	else
		slidePrev(slides);
}

function slidePause(slides)
{
	if (slides.slideTimer) {
		document.getElementById(slides.id + "ImgLayer0").onload = null;
		document.getElementById(slides.id + "ImgLayer1").onload = null;
		clearTimeout(slides.slideTimer);
		slides.slideTimer = null;
	}
}

function makeUploadFileName(prefix, postfix)
{
	var	date = new Date();
	dsec = Math.round((date - Date.UTC(2007, 3, 1)) / 100);
	salt = Math.round(Math.random() * 100);
	return	prefix + dsec + "_" + salt + postfix;
}

/*
	To make click method work for Image elements in Mozilla.
*/
if (navigator.appName != "Microsoft Internet Explorer") {
	HTMLImageElement.prototype.click = function() {
		var evt = this.ownerDocument.createEvent('MouseEvents');
		evt.initMouseEvent('click', true, true, this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
		this.dispatchEvent(evt);
	}
}
