
$(function() {
	/*$(document.body).append("<div id='debug'/>");
	function debug(msg)
	{
		$("#debug").append($("<div/>").text(msg));
	}
	
	function debugit(obj)
	{
		debug(obj.parentNode.innerHTML);
	}*/
			
	$(".leftmenu li").hover(
		function() { $(this).addClass("hover"); },
		function() { $(this).removeClass("hover"); } );
	

	var overOpacity = 0.9;
	if (!$.browser.msie) {
		$(".menuitem").each(function() {
			$(this).wrapInner("<div class='" + $(this).attr("class") + "' style='" + $(this).attr("style") + "'></div>")
				.removeAttr("class").removeAttr("style");
		});
		$(".submenu .submenu").wrap("<div/>");
	} else {
		if (parseFloat($.browser.version) < 7) {
		}
		
		overOpacity = '';
		//alert($.browser.version);
//		var widths = $(".menu td").map(function() { return this.offsetWidth; }).get();
//		
//		var t = widths.join(",");
//		$(".menu td").each(function(i) { $(this).css("width", widths[i]) });
//		
//		widths = $(".menu td").map(function() { return this.offsetWidth; }).get();
//		alert(widths.join(",") == t);
	}
	
	function getWidth(obj, last) {
		var parentW = $(obj).parents("td").innerWidth();

		if (!last) {
			var eigenW = $(obj).innerWidth();
			var minW = 190;
			var neighbourW = $(obj).parents("td").next().innerWidth();
			return Math.max(eigenW, parentW, minW, parentW + neighbourW / 2);
		}
		
		return parentW;
	}
	
	$(".submenu .submenu").each(function() {
		var w = $(this).get(0).offsetWidth;
		$(this).width(w).find("li").each(function() {
			$(this).css("background-color", $(this).parents(".menuitem").css("background-color"));
			}).css("opacity", 0.70 / 0.95).hover(
				function() { $(this).css("opacity", 1); },
				function() { $(this).css("opacity", 0.70 / 0.95); });
	});
	
	submenus = $(".menuitem > .submenu");
	submenus.each(function(i) {
		//console.log($(this).innerWidth());
	
		$(this).wrap("<div class='submenumask' style='position: absolute; left: 0; top: 100%;'></div>")
			//.submenu style aanpassen
			.css("visibility", "visible")
			.css("background-color", "transparent")
			.css("position", "static")
			.removeClass("doorzichtig")
			//animatie
			.parents(".menuitem").hover(
				function() { 
					$(this).css("z-index", "100"); 
					$("div.submenumask", this).stop();
					if ($("div.submenumask", this).is(":visible")) {
						heightFrom = $("div.submenumask", this).height();
					} else
						heightFrom = 0;
						
					$("div.submenumask", this).css({overflow: ''});
					$("div.submenumask", this).show().css("height", "auto");
					var heightTo = $("div.submenumask", this).height();
					$("div.submenumask", this).css("height", heightFrom);
					
					//$("div.submenumask", this).show().css("height", "auto"); }, //animate( {height: "auto", display: ""}, 2000); }, //slideDown(1000); }, 
					$("div.submenumask", this).animate({height: heightTo + "px"}, 250); }, //animate( {height: "auto", display: ""}, 2000); }, //slideDown(1000); }, 
				function() { $(this).css("z-index", ""); 
					$("div.submenumask", this).stop();
					$("div.submenumask", this).slideUp(500); }) //animate( {height: ""}, 1500); } )
			//div
			.end().parent()
				//breedte van submenu moet minstens zo breed zijn als eigen content en parent menu
				.width(getWidth(this, i == submenus.length - 1))
				//centreren van submenu
				//.css("left", "-" + (Math.max($(this).parent().parent().innerWidth(), $(this).innerWidth()) - $(this).parent().parent().innerWidth()) / 2 + "px")
				//nu pas verbergen, anders werkt innerWidth niet
				.css("display", "none")
			//submenu items
			.end().children("li")
				.css("width", "100%")
				.css("padding", 0)
				.css("background-color", $(this).parents(".menuitem").css("background-color"))
				//.css("list-style-position", "outside")
				//.addClass("doorzichtig")
				.css("opacity", 0.70)
				.hover( 
					function() { $(this).css("filter", ''); $(this).css("opacity", overOpacity); $("ul", this).css("visibility", "visible"); }, //("doorzichtig"); }, //css("color", "white"); }, //fadeTo(0, 1)},//("opacity", "1"); },
					function() { $(this).css("opacity", 0.70); $("ul", this).css("visibility", "hidden"); }) //("doorzichtig"); }) //css("color", ""); }) //("opacity", ""); })
				;
			//console.log($(this).innerWidth());
		});
	
	$(".leftmenu li, .menuitem, .menu li").click(function() { window.location = $(">a", this).attr("href"); return false; })
		.css("cursor", "pointer");

	if ($.browser.msie) {
		//alert($(".menu").html());
	}
	
	/*
	if ($(".leftmenu").parent().height() > 1000) {
		var parent = $(".leftmenu").parent();
		var clone = $(".leftmenu").clone();
		parent.css("position", "relative");
		parent.append(clone);
		clone.css({position: "absolute", top: (parent.height() + parent.offset().top - clone.height()) + "px"});
	}
	*/
	
//	$(".menuitem").css("padding", 0).each(function() {
//		//console.log(this, $(this).parent(), $(this).parent().width());
//		
//		$(this).width($(this).parent().innerWidth());//.css("padding", 0);
//		//console.log(this, $(this).parent(), $(this).parent().width());
//		
//	});
});

