var product_overlay_ltime = -1;
var product_old_classname = false;
var loop_started = false;

/* TOPLEVEL */
function showProductMenu(){
	product_overlay_ltime = -1;
	
	var obj = document.getElementById("products_menu_tl");	
	var toplevel = document.getElementById("toplevelnavi");
	var link_anker = document.getElementById("ssi_products_link");
	
	var of = getAbsolutePosition(toplevel);
	
	obj.style.left = String(of[0]) + "px";
	obj.style.top = String(of[1] + 24) + "px";
	
	obj.style.display = "block";
	
	if( !product_old_classname )
	product_old_classname = link_anker.className;
	
	link_anker.className = "ssi_products_hover";
}

function checkProductMenu(){
	var now = new Date();

	if( product_overlay_ltime != -1 && now.getTime()-product_overlay_ltime > 1500  ){
		hideProductMenuDirect();
		loop_started = false;
	}else if(  product_overlay_ltime != -1 ){
		window.setTimeout("checkProductMenu()",100);
	}else{
		loop_started = false;
	}
}

function hideProductMenu(){
	var now = new Date();
	product_overlay_ltime = now.getTime();
	
	if( !loop_started ){
		window.setTimeout("checkProductMenu()",100);
		loop_started = true;
	}
}

function hideProductMenuDirect(){
	var link_anker = document.getElementById("ssi_products_link");
	var obj = document.getElementById("products_menu_tl");	
	
	product_overlay_ltime = -1;
	
	if( product_old_classname )
	link_anker.className = product_old_classname;
	
	obj.style.display = "none";
	
	if( product_subcat != null )
	hideSubProductMenuDirect(product_subcat);
}

var product_subcat = null;
var subloop_started = false;

/* SUBMENU */
function showSubProductMenu(type){
	product_overlay_ltime = -1;
	
	var obj = document.getElementById("products_menu_tl");
	var link_anker = document.getElementById("tl_btn_"+type);
	var subobj = document.getElementById("products_menu_"+type);
	
	if( product_subcat != null ){
		hideSubProductMenuDirect(product_subcat);
	}
	product_subcat = type;
	
	var of = getAbsolutePosition(obj);
	var of2 = getAbsolutePosition(link_anker);
	
	subobj.style.left = String( of[0] + obj.offsetWidth ) + "px";
	subobj.style.top = String( of2[1] ) + "px";
	
	subobj.style.display = "block";
	link_anker.className = "products_menu_tl_hover";
}

function checkSubProductMenu(){
	var now = new Date();

	if( product_overlay_ltime != -1 && now.getTime()-product_overlay_ltime > 1500  ){
		hideProductMenuDirect();
		loop_started = false;
	}else if(  product_overlay_ltime != -1 ){
		window.setTimeout("checkProductMenu()",100);
	}else{
		loop_started = false;
	}
}

function hideSubProductMenu(){
	var now = new Date();
	product_overlay_ltime = now.getTime();
	
	if( !loop_started ){
		window.setTimeout("checkProductMenu()",100);
		loop_started = true;
	}
}

function hideSubProductMenuDirect(type){
	var obj = document.getElementById("products_menu_"+type);
	var obj2 = document.getElementById("tl_btn_"+type);
	
	obj.style.display = "none";
	obj2.className = "";
	
	if( product_subcat == type ) product_subcat = null;
}

/* GENERAL */
function getAbsolutePosition(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}

function clearRubricHeights(){
	var obj1 = document.getElementById("ssi_productscat_side_content");
	var obj2 = document.getElementById("ssi_productscat_main_content");
	
	if( obj1 != undefined && obj2 != undefined ){
		if( obj1.offsetHeight > obj2.offsetHeight ){
			/* obj2.style.height = String(obj1.offsetHeight - 16) + "px"; */
		}else{
			obj1.style.minHeight = String(obj2.offsetHeight) + "px";
		}
	}
}

function reiterUpdate(){
	var obj1 = document.getElementById("active_reiter");
	var obj2 = document.getElementById("active_reiter_ov");
	if( obj1 != undefined && obj2 != undefined ){
		obj2.style.top = String(obj1.offsetTop) + "px";	
		obj2.style.left = String(obj1.offsetLeft) + "px";	
		obj2.style.position = "absolute";
		obj2.style.display = "block";
	}
}



