/*
	autor:	Krzysztof Dębiński [Boleslawiec.org]
	prawa:	Kopiowanie, rozpowszechnianie lub
			wykorzystywanie w innych projektach
			bez zgody autora zabronione.
*/

var	mactive = false, metimer = 0, mctimer = 0;

function	get_parent(element) {
	while(element = element.parentNode) {
		if(element.nodeType == 1)
			return element;
		else if(element.nodeName == 'BODY')
			return element;
	}
	return false;
}

function get_top(obj) {
	var offset = 0;
	if (obj.offsetParent) {
		offset = obj.offsetTop;
		while (obj = obj.offsetParent)
			offset += obj.offsetTop;
	}
	return offset;
}

function	get_left(obj) {
	var offset = 0;
	if (obj.offsetParent) {
		offset = obj.offsetLeft;
		while (obj = obj.offsetParent)
			offset += obj.offsetLeft;
	}
	return offset;
}

function	mexpand() {
	metimer = 0;
	if(!mactive)
		return;
	mactive.style.display = 'block';
}

function	mcollapse() {
	mctimer = 0;
	if(!mactive)
		return;
	mactive.style.display = 'none';
	mactive = false;
}

function	mover(o) {
	var	is_child = false;
	var	item = get_parent(o), current, levels;
	var	level = get_parent(item);

	if(mctimer > 0)
		window.clearTimeout(mctimer);
	mctimer = 0;

	if(metimer > 0)
		window.clearTimeout(metimer);
	metimer = 0;

	current  = false;
	if(get_parent(level).nodeName == 'DIV') {
		levels = item.getElementsByTagName('UL')
		if(levels.length > 0) {
			current = levels[0];
			current.style.top = get_top(o);
			current.style.left = get_left(o) + 145;
		}
	} else
		current = level;

	if(mactive) {
		if(mactive == current)
			return;
		mcollapse();
	}

	if(mactive = current)
		metimer = setTimeout('mexpand();', 100);
}

function	mout() {
	if(!mactive)
		return;
	if(mctimer > 0)
		window.clearTimeout(mctimer);
	mctimer = window.setTimeout('mcollapse();', 100);
}

