﻿// Plugin created by Brock Nusser - http://mlamenu.blogspot.com/

$(function () {
	var collapse = new Boolean();
	//setup - all values in pixels
	var navWidth = 200;
	var ulIndent = 0;
	collapse = true;
	//end setup
	
	$('#menu-mainmenu').css('width', navWidth + 'px');
	$('#menu-mainmenu ul').css('width', navWidth + 'px');
	$('#menu-mainmenu ul').css('margin-left', ulIndent + 'px');


	$('#menu-mainmenu a').each(function () {
		var level = $(this).parents('ul').length;
		var liWidth = navWidth - (ulIndent * level);
		$(this).parent('li').css('width', liWidth + 'px');
	});
	
	//Required Section
    var slideSpeed = 'normal'; // 'slow', 'normal', 'fast', or miliseconds 
	$('#menu-mainmenu a').each(function () {
        var thisHref = $(this).attr('href')
		if ((window.location.pathname.indexOf(thisHref) == 0) || (window.location.pathname.indexOf('/' + thisHref) == 0)) {
            $(this).addClass('Current');
        }
    });
    
	$('.Current').parent('li').children('ul').show();
    $('.Current').parents('ul').show();
    
    $('#menu-mainmenu a').click(function () {
        if ($(this).parent('li').children('ul').html() != null) {
			if(collapse){$(this).parent('li').parent('ul').children('li').children('ul').hide(slideSpeed);}
            if ($(this).parent('li').children('ul').css('display') == "block") {
                $(this).parent('li').children('ul').hide(slideSpeed);
            } else {
                $(this).parent('li').children('ul').show(slideSpeed);
            }
            return false;
        }
	
    });

    $('#menu-mainmenu li').click(function () {
        if ($(this).children('a').length == 0) {
            if ($(this).children('ul').html() != null) {
                $(this).parent('ul').children('li').children('ul').hide(slideSpeed);
                if ($(this).children('ul').css('display') == "block") {
                    $(this).children('ul').hide(slideSpeed);
                } else {
                    $(this).children('ul').show(slideSpeed);
                }
            }
        } 
    });
	//End Required Section

	//Optional Section - Show Carrots
   // var imgOffClosed = "url(../wp-content/themes/dutchman/images/layout/nav/bullet.png) no-repeat right  ";
    var imgOffClosed = "url(http://www.ldutchman.com/wp-content/themes/dutchman/images/layout/nav/bullet.png) no-repeat right  ";
    //var imgOnClosed = "url(images/imgOnClosed.gif) no-repeat 5px ";
    // var imgOnOpen = "url(images/imgOnOpen.gif) no-repeat 5px ";
    var charBeforeLB = 23; //characters before line break - you must calculate this - based on font-size and LI width;
	var paddingBig = 12; //push carrot arrow down (in pixels) when no there is a line break in the LI
    var paddingSmall = 8;  //push carrot arrow down (in pixels) when no there is no line break in the LI
    var maxLIHeight = 50; // max height of LI when list is closed
	
	//alert($('#menu-mainmenu li').has('ul'));
	/*if($('#menu-mainmenu li').children('ul').length != 0){
		$('#menu-mainmenu li').addClass('sub');
	}*/
	
	$('#menu-mainmenu li ul').parent('li').addClass('sub');
	
	
    $('#menu-mainmenu > li.sub').each(function () {

        var childText = $(this).children('a').text();
        var topPadding = paddingBig;
        if (childText.length < charBeforeLB) { topPadding = paddingSmall; }
        if ($(this).height() < maxLIHeight) {//list is closed

            if ($(this).children('li.sub').attr('class') == "Current") {
                $(this).css('background', imgOnClosed + topPadding + "px");
            } else {
                $(this).css('background', imgOffClosed + topPadding + "px");
            }

            if ($(this).children('li.sub').attr('class') != "Current") {
                $(this).hover(function () {
                    if ($(this).height() < maxLIHeight) { 
						$(this).css('background', imgOnClosed + topPadding + "px"); 
					}
                },
                function () {
                    if ($(this).height() < maxLIHeight) { 
						$(this).css('background', imgOffClosed + topPadding + "px"); 
					}
                });
            }
        }
        else {// list is open
            $(this).css('background', imgOnOpen + topPadding + "px");
        }

        $(this).children('li.sub').click(function () {
            $('#menu-mainmenu > li.sub').each(function () {
                var childText = $(this).children('a').text();
                var topPadding = paddingBig;
                if (childText.length < charBeforeLB) { topPadding = paddingSmall; }
                if ($(this).children('a').attr('class') == 'Current') {
                    $(this).css('background', imgOnClosed + topPadding + "px");
                } else {
                    $(this).css('background', imgOffClosed + topPadding + "px");
                }
            });
            var liHeight = $(this).parent('li').height();
            if ($(this).parent('li').children('ul').length > 0) {
                if (liHeight < maxLIHeight) { 
					$(this).parent('li').css('background', imgOnOpen + topPadding + "px");
				} else { 
					$(this).parent('li').css('background', imgOnClosed + topPadding + "px"); 
				}
            }

        });
    });
	//End Optional Section
});
