//----------------------------------------------------
// D21-Hover Prompt Javascript Library
// (c) 2005 Dean (D-Scripting)
//----------------------------------------------------

var mode     = 'always';
var fade     = false;
var scroll   = true;
var ie_fade  = 1;
var moz_fade = 0.05;

if (parseInt(mode) != NaN)
{
	var random = Math.floor(Math.random() * mode);
}

function display_hover_prompt()
{
	var dom    = document.getElementById;
	var iebody = (document.compatMode == 'CSS1Compat') ? document.documentElement : document.body;
	var objref = (dom) ? document.getElementById('d21hp') : document.all['d21hp'];
	var stop   = (is_ie) ? iebody.scrollTop   : window.pageYOffset;
	var docw   = (is_ie) ? iebody.clientWidth : window.innerWidth;
	var doch   = (is_ie) ? iebody.clientHeight: window.innerHeight;
	var objw   = objref.offsetWidth;
	var objh   = objref.offsetHeight;

	objref.style.left = docw/2-objw/2+'px';
	objref.style.top  = stop+doch/2-objh/2+'px';

	if (scroll)
	{
		var scrollvar = setInterval('static_hover_prompt()', 50);
	}

	if (fade && objref.filters)
	{
		objref.filters[0].duration = ie_fade;
		objref.filters[0].Apply();
		objref.filters[0].Play();
	}

	objref.style.visibility = 'visible';
	if (objref.style.MozOpacity)
	{
		if (fade)
		{
			var mozfadevar = setInterval('mozilla_hover_prompt_fade()', 90);
		}
		else
		{
			objref.style.MozOpacity = 1;
			initiate_hover_prompt_hiding();
		}
	}
	else
	{
		initiate_hover_prompt_hiding()
	}
}

function mozilla_hover_prompt_fade()
{
	if (parseFloat(objref.style.MozOpacity) < 1)
	{
		objref.style.MozOpacity = parseFloat(objref.style.MozOpacity)+moz_fade;
	}
	else
	{
		clearInterval(mozfadevar);
	}
}

function static_hover_prompt()
{
	var dom    = document.getElementById;
	var iebody = (document.compatMode == 'CSS1Compat') ? document.documentElement : document.body;
	var objref = (dom) ? document.getElementById('d21hp') : document.all['d21hp'];
	var stop   = (is_ie) ? iebody.scrollTop   : window.pageYOffset;
	var docw   = (is_ie) ? iebody.clientWidth : window.innerWidth;
	var doch   = (is_ie) ? iebody.clientHeight: window.innerHeight;
	var objw   = objref.offsetWidth;
	var objh   = objref.offsetHeight;

	objref.style.top = stop+doch/3-objh/2+'px';
}

function hide_hover_prompt()
{
	var dom    = document.getElementById;
	var iebody = (document.compatMode == 'CSS1Compat') ? document.documentElement : document.body;
	var objref = (dom) ? document.getElementById('d21hp') : document.all['d21hp'];

	objref.style.visibility = 'hidden';
	if (typeof(scrollvar) != 'undefined')
	{
		clearInterval(scrollvar);
	}
}

function initiate_hover_prompt_hiding()
{
	if (autohide[0])
	{
		var delayvar = (fade && objref.filters) ? (autohide[1]+objref.filters[0].duration)*1000 : autohide[1]*1000;
		initiate_timer(delayvar);
		setTimeout('hide_hover_prompt()', delayvar);
	}
}

function initiate_timer(time)
{
	var newtime = time-1000;
	setTimeout('update_timer('+newtime+')', 1000);
}

function update_timer(time)
{
	if (!show_timer)
	{
		return false;
	}

	var timer = time/1000;
	var dom   = document.getElementById;

	if (dom)
	{
		var hp = document.getElementById('d21hp-timer');
		if (hp)
		{
			if (timer == 1)
			{
				hp.innerHTML = "<small><i>"+lang_timetxt+" "+timer+" "+lang_timesec+"</i></small>";
			}
			else
			{
				hp.innerHTML = "<small><i>"+lang_timetxt+" "+timer+" "+lang_timesecs+"</i></small>";
			}
		}
	}

	var newtime = time-1000;
	setTimeout('update_timer('+newtime+')', 1000);
}

function initiate_hover_prompt()
{
	setTimeout('display_hover_prompt()', 100);
}

function get_cookie(Name)
{
	var search = Name + "=";
	var returnvalue = "";

	if (document.cookie.length > 0)
	{
		var offset = document.cookie.indexOf(search);
		if (offset != -1)
		{
			offset += search.length;
			var end = document.cookie.indexOf(';', offset);

			if (end == -1)
			{
				end = document.cookie.length;
			}

			returnvalue = unescape(document.cookie.substring(offset, end));
		}
	}

	return returnvalue;
}
