// menu.js
// (c) Wojtek 'Padre' Nowak, Chorzów 2003,2004
// http://www.padre.one.pl/
// (c) AltumNet sp. z o.o., Chorzów 2004
// http://www.altumnet.pl/

var loaded = false;

var menus = new Array();
menus['menuf'] = new Object();
menus['menuh'] = new Object();
menus['menuj'] = new Object();

menus['menuf'].up = -106;
menus['menuf'].down = -1;
menus['menuh'].up = -58;
menus['menuh'].down = -1;
menus['menuj'].up = -166;
menus['menuj'].down = -1;

var step = 10;
var delay = 20;
var hide = 2000;
var menuheight = 200;

var checking = 100;

var elapsed = 0;
var animating = false;

function menuDownAnim() {
	if (animating) {
		menus[animating].position += step;
		getStyleById(animating).top = menus[animating].position + 'px';
		if (menus[animating].position < menus[animating].down)
			setTimeout('menuDownAnim()', delay);
		else
			animating = false;
	}
}

function menuDown(id) {
	stopHiding();
	if ((loaded) && (parseInt(getStyleById(id).top) == menus[id].start)) {
		resetMenu();
		if (!op) getStyleById('menu').height = menuheight + 'px';
		else getStyleById('menu').height = menuheight;
		animating = id;
		setTimeout('menuDownAnim()', delay);
	}
}

function checkHiding() {
	if (elapsed > 0) {
		if (elapsed < hide) {
			elapsed += checking;
			setTimeout('checkHiding()', checking);
		} else {
			resetMenu();
		}
	}
}

function startHiding() {
	elapsed = checking;
	setTimeout('checkHiding()', checking);
}

function stopHiding() {
	elapsed = 0;
}

function resetMenu() {
	animating = false;
	elapsed = 0;
	for (menuitem in menus) {
		menus[menuitem].status = 0;
		menus[menuitem].start = menus[menuitem].down;
		while (menus[menuitem].start > menus[menuitem].up) menus[menuitem].start -= step;
		menus[menuitem].position = menus[menuitem].start;
		getStyleById(menuitem).top = menus[menuitem].position + 'px';
	}
	if (!op) getStyleById('menu').height = '10px';
	else getStyleById('menu').height = 10;
}

function writeMail(name, server, classa) {
	document.write('<a href="mailto:' + name + '@' + server + '" class="' + classa + '" onfocus="blur()">' + name + '@' + server + '</a>');
}

function writeMailDesc(name, server, description, classa) {
	document.write('<a href="mailto:' + name + '@' + server + '" class="' + classa + '" title="' + name + '@' + server + '" onfocus="blur()">' + description + '</a>');
}

function placeMenu() {
	var mtop = document.getElementById('maintable').offsetTop;
	if (ie) mtop += 1;
	if (op) mtop += 11;
	var mleft = document.getElementById('maintable').offsetLeft;
	mtop += document.getElementById('menutr').offsetTop;
	mleft += document.getElementById('menutr').offsetLeft;
	getStyleById('menu').top = mtop + 'px';
	getStyleById('menu').left = mleft + 'px';
}

function onBodyLoad() {
	placeMenu();
	resetMenu();
	loaded = true;
}

function onBodyResize() {
	placeMenu();
}
