/*
	JV: 2010-11-03 Script aangepast voor humanitas woonzorg plus, niet veel van het oorspronkelijke over
	This script finds the current selected node in the menu and add the selected class to it
	as well as to its parents in the menu.
	If you want placeholders to be folded, add the class menuFolding to it, you can do that
	in the sitemap config (php).
	2010-12-13: Animation is disabled when opening a submenu, instead a new pageload is triggered with the
	first page linked in the submenu
*/

	// this means on load only the upper level ul's will be visible visible, normally you want this for a vertical menu
var blnFoldToRootElements = true;
var blnAnimate = true;
var intAnimationDuration = 400;

$(document).ready(function() {

		// first fold all items, this is done here so when JS is disabled, everything will still show.
	if(blnFoldToRootElements){
		$('ul.MenuLevel0 li ul').css('display', 'none');
	}else{
		$('li.menuFolding ul').css('display', 'none');
	}

	$('ul.MenuLevel0 li a').bind('mouseenter', function(event){
		event.stopPropagation();
		$(this).addClass('hover');
		if($(this).parent().hasClass('active') == false)
			$(this).parent().addClass('hover');
	});
	$('ul.MenuLevel0 li a').bind('mouseleave', function(event){
		$(this).removeClass('hover');
		$(this).parent().removeClass('hover');
	});

	openLink = function(element){
		var firstLink = $('li:first-child a', element);
		if(firstLink != null){
			var url = $(firstLink).attr('href');
			window.location = url;
		}
		return false;
	}

	$('ul.MenuLevel0 li').bind('click', function(event){
		event.stopPropagation();
		if($("ul:first",this).length > 0){

			$('ul.MenuLevel0 li.active').removeClass('active');
			var otherElm = $('ul.visibleMenuLevel');
			var ulElm = $("ul:first",this);
				// first hide the open menu then open the new one
			if(otherElm.length > 0){
				otherElm.removeClass('visibleMenuLevel');
				otherElm.parent().removeClass('active');
				otherElm.parent().addClass('normal');
				ulElm.parent().addClass('active');
				ulElm.parent().removeClass('normal');
				ulElm.parent().removeClass('hover');
//				$('#grayTab').css('display', 'block');
				$('#grayTab').css({'display': 'block', 'left': ulElm.parent().position().left-5});
				$('#grayTab span').css('width', ulElm.parent().width()-7);
				$('#grayTab span').animate({height: '11'}, intAnimationDuration);
				$('#wrap').animate({paddingTop: '-=40'}, intAnimationDuration);
				otherElm.slideToggle(intAnimationDuration, function(){
					ulElm.addClass('visibleMenuLevel');
					if(blnAnimate){
						//ulElm.slideToggle(intAnimationDuration);
						//$('#grayTab span').animate({height: '10'}, intAnimationDuration);
						//$('#wrap').animate({paddingTop: '+=40'}, intAnimationDuration, openLink(ulElm));
						openLink(ulElm);
					}
					return false;
				});
			}else{
				// only open the new menu, no menu to close
				ulElm.addClass('visibleMenuLevel');
				ulElm.parent().addClass('active');
				ulElm.parent().removeClass('normal');
				ulElm.parent().removeClass('hover');
//				$('#grayTab').css('display', 'block');
//				$('#grayTab').css('display', 'block', 'left', ulElm.parent().position().left-5);
				$('#grayTab').css({'display': 'block', 'left': ulElm.parent().position().left-5});
				$('#grayTab span').css('width', ulElm.parent().width()-7);
				$('#grayTab span').css('height', 11);
				if(blnAnimate){
					//ulElm.slideToggle(intAnimationDuration);
					//$('#grayTab span').animate({height: '10'}, intAnimationDuration);
					//$('#wrap').animate({paddingTop: '+=40'}, intAnimationDuration, openLink(ulElm));
					openLink(ulElm);
				}
			}

			return false;
		}else{
			return true;
		}
	});

//	$('ul.MenuLevel0 li').bind('mouseleave', function(event){
//		$("ul:first",this).css('display', 'none');
//
//	});

		// find the node that points to the current page and add class 'selected'
	$('ul.MenuLevel0 a').each(function(index, objHref){
		if($(objHref).attr('href') == document.location){
			$(objHref).addClass('selected');
			$(objHref).addClass('active');
			$(objHref).removeClass('normal');
			var objParent = $(objHref).parent();
			while(true){
				var tagName = $(objParent).attr('tagName');
				if(tagName == 'LI'){
					$(objParent).addClass('selected');
					$(objParent).addClass('active');
					$(objParent).removeClass('normal');
				}else if(tagName == 'UL'){
					if($(objParent).hasClass('MenuLevel1')){
						$(objParent).addClass('visibleMenuLevel');
						$(objParent).parent().addClass('active');
						$(objParent).parent().removeClass('normal');
//						$('#grayTab').css('display', 'block');
//						$('#grayTab').css('display', 'block', 'left', $(objParent).parent().position().left-5);
						$('#grayTab').css({'display': 'block', 'left': $(objParent).parent().position().left-5});
						$('#grayTab span').css('width', $(objParent).parent().width()-7);
						$('#grayTab span').css('height', 11);
						if(blnAnimate){
							$(objParent).slideToggle(intAnimationDuration);
							$('#grayTab span').animate({height: '7'}, intAnimationDuration);
							$('#wrap').animate({paddingTop: '+=40'}, intAnimationDuration);
						}
					}
				}
				objParent = $(objParent).parent();
				if(tagName != 'LI' && tagName != 'UL')
					break;
			}
		}
	});

});


