/**
 * Wersja 1.0 beta
 * Autor: dealer_00
 * Kontakt: dealer00@gmail.com
 */
var menujs3_head;
var menujs3_visible_object = null;
var menujs3_visible_timer = null;
var menujs3_visible_time = 1000;
var menujs3_offset_top = 32;

function menujs3_clear_timer() {
	if (menujs3_visible_timer) {
		clearTimeout(menujs3_visible_timer);
		menujs3_visible_timer = null;
	}
}

function menujs3_change_visible(new_obj, time) {
	if (time) {
		menujs3_clear_timer();
		menujs3_visible_timer = setTimeout(function() {menujs3_change_visible(new_obj);}, menujs3_visible_time);
	} else {
		menujs3_clear_timer();
		if (menujs3_visible_object) menujs3_visible_object.style.visibility = 'hidden';
		menujs3_visible_object = new_obj;
		if (menujs3_visible_object) menujs3_visible_object.style.visibility = 'visible';
	}
}

function menujs3_set_submenu_position(submenu_node) {
	var parent = submenu_node.parentNode;
	var left   = (screen.width/2) - (submenu_node.offsetWidth/2);
	
	submenu_node.style.left = parent.offsetLeft + 5 + "px";
	submenu_node.style.top  = (parent.offsetTop + menujs3_offset_top) + "px";
}

function menujs3_set_styles(submenu_node) {
	submenu_node.style.visibility = 'hidden';
	submenu_node.style.position = 'absolute';
	menujs3_set_submenu_position(submenu_node);
}

function menujs3_set_actions(submenu_node) {
	var menuitem_node = submenu_node.parentNode;
	
	var old_action1 = menuitem_node.onmouseover ? menuitem_node.onmouseover : function() {};
	
	menuitem_node.onmouseover = function() {
		old_action1();
		menujs3_change_visible(submenu_node);
	}
	
	var old_action2 = menuitem_node.onmouseout ? menuitem_node.onmouseout : function() {};
	
	menuitem_node.onmouseout = function() {
		old_action2();
		menujs3_change_visible(null, menujs3_visible_time);
	}
	
	var old_action3 = submenu_node.onmouseover ? submenu_node.onmouseover : function() {};
	
	submenu_node.onmouseover = function() {
		old_action3();
		menujs3_change_visible(submenu_node);
	}
	
	var old_action4 = submenu_node.onmouseout ? submenu_node.onmouseout : function() {};
	
	submenu_node.onmouseout = function() {
		old_action4();
		menujs3_change_visible(null, menujs3_visible_time);
	}
}

function menujs3_init(container_id) {
	menujs3_head = document.getElementById(container_id);
	menujs3_start();
}

function menujs3_start() {
	var submenus = menujs3_head.getElementsByTagName("UL");
	
	for(i=0; i<submenus.length; i++) {
		var node = submenus[i];
		
		if (node.className && node.className.indexOf("subMenu") != -1) {
			menujs3_set_styles(node);
			menujs3_set_actions(node);
		}
	}
}

