var e_panelmenu = false;
var e_console = false;
var extract_interval = 30;
var e_extracted_last = false;
var menu_basic = true;
var e_string = "";
var menu_stop = false;
var menu_extracting = false;

function menu_init(){
	e_console = document.getElementById('console');
	e_panelmenu = document.getElementById('panel_menu');


	e_panelmenu_child = firstChild_elem(e_panelmenu);
	while(e_panelmenu_child){
		var elem = firstChild_elem(e_panelmenu_child);
		//disable_select(elem);
		if(document.attachEvent){
			//firstChild_elem(e_panelmenu_child).attachEvent('onmouseover',pmenu_focus);
			//firstChild_elem(e_panelmenu_child).attachEvent('onmouseout', pmenu_blur );
			firstChild_elem(e_panelmenu_child).attachEvent('onclick', pmenu_extractstart );
		}
		else{
			//firstChild_elem(e_panelmenu_child).addEventListener('mouseover',  pmenu_focus,   true);
			//firstChild_elem(e_panelmenu_child).addEventListener('mouseout',   pmenu_blur,    true);
			firstChild_elem(e_panelmenu_child).addEventListener('click', pmenu_extractstart, true);
		}
		e_panelmenu_child = nextSibling_elem(e_panelmenu_child);
	}

	i_pmenu_over = new Image();
	i_pmenu_over.src = "images/pmenu_over.png";
	i_arrow_small_right = new Image();
	i_arrow_small_right.src = "images/arrow_small_right.png";
}

function pmenu_focus(e){
	e = e ? e : window.event;

	e.cancelBubble = true;
	if(e.stopPropagation) e.stopPropagation();

	var target = event_get_target(e);
	target.className = "pmenu_over";
}
function pmenu_blur(e){
	e = e ? e : window.event;

	e.cancelBubble = true;
	if(e.stopPropagation) e.stopPropagation();

	var target = event_get_target(e);
	target.className = "pmenu";
}

function pmenu_extractstart(e){
	var e = e ? e : window.event;

	var target = event_get_target(e);


	if(e_extracted_last)
	{
		if(e_extracted_last == target)
		{
			if(menu_extracting) menu_stop = true;
			if(menu_stop){
				setTimeout("pmenu_semafor(document.getElementById('" + target.id + "'))",extract_interval);
				return;
			}
			e_extracted_last = false;
			var last = lastSibling_elem(target);
			pmenu_packprevious(last);
		}
		else{
			if(menu_extracting) menu_stop = true;
			if(menu_stop){
				setTimeout("pmenu_semafor(document.getElementById('" + target.id + "'))",extract_interval);
				return;
			}
			var last = lastSibling_elem(e_extracted_last);
			e_extracted_last = target;
			pmenu_packprevious(last);
			menu_extracting = true;
			pmenu_extractnext(target);
		}
	}
	else
	{
		menu_extracting = true;
		e_extracted_last = target;
		pmenu_extractnext(target);
	}
}

function pmenu_semafor(target){
	if(e_extracted_last == target)
	{
		if(menu_stop){
				setTimeout("pmenu_semafor(document.getElementById('" + target.id + "'))",extract_interval);
				return;
		}

		e_extracted_last = false;
		var last = lastSibling_elem(target);
		pmenu_packprevious(last);

	}
	else{
		if(menu_stop){
				setTimeout("pmenu_semafor(document.getElementById('" + target.id + "'))",extract_interval);
				return;
		}

		var last = lastSibling_elem(e_extracted_last);
		e_extracted_last = target;
		pmenu_packprevious(last);
		menu_extracting = true;
		pmenu_extractnext(target);

	}
}

function pmenu_extractnext(elem){
	if(menu_stop){
		menu_stop = false;
		return;
	}
	var sibling = nextSibling_elem(elem);
	if(sibling){
		sibling.style.display = "block";
		set_opacity(sibling,0);

		setTimeout("pmenu_extractnext(document.getElementById('"+sibling.id+"'));",extract_interval);
		if(menu_basic)
		{
			set_opacity(sibling,100);
		}
		else
		{
			setTimeout("fadein(document.getElementById('"+sibling.id+"'), 0, 30);",100);
		}
	}
	else{
		menu_extracting = false;
	}
}
function pmenu_packprevious(sibling){
	//alert(elem.id);
	if(sibling){
		if(! previousSibling_elem(sibling)){
			return;
		}
		//setTimeout("fadeout(document.getElementById('"+sibling.id+"'), 100, 30);",0);
		sibling.style.display = "none";
		sibling = previousSibling_elem(sibling);
		setTimeout("pmenu_packprevious(document.getElementById('"+sibling.id+"'));",extract_interval);
	}
}

function set_opacity(elem, opacity){
	if (navigator.appName.indexOf("Netscape")!=-1 &&parseInt(navigator.appVersion)>=5)
    	elem.style.MozOpacity=opacity/100
 	else if (navigator.appName.indexOf("Microsoft")!= -1 &&parseInt(navigator.appVersion)>=4)
    	elem.style.filter = 'alpha( opacity='+opacity+')';
    else{
    	elem.style.opacity = opacity/100;
    }
}

function fadein(elem, opacity, interval){
	opacity += 10;
	if(opacity > 100){
    	opacity = 100;
    }
	set_opacity(elem,opacity);

    if(opacity != 100) setTimeout("fadein(document.getElementById('"+elem.id+"'),"+opacity+","+interval+");",interval);
}

function fadein2(elem, opacity, interval, opacity_max)
{
	opacity += 10;
	if(opacity > opacity_max){
    	opacity = opacity_max;
    }
	set_opacity(elem,opacity);

    if(opacity != opacity_max) setTimeout("fadein2(document.getElementById('"+elem.id+"'),"+opacity+","+interval+","+opacity_max+");",interval);
}

function fadeout(elem, opacity, interval){
	opacity -= 10;
	if(opacity < 0) opacity = 0;

	set_opacity(elem,opacity);

    if(opacity > 0) setTimeout("fadeout(document.getElementById('"+elem.id+"'),"+opacity+","+interval+");",interval);
	else{
		//doplnit
		setTimeout("document.getElementById('"+elem.id+"').style.display = 'none';",100);
	}
}