jQuery.fn.reverse = Array.prototype.reverse;

(function ($) {
// START

var menu_timer = false;

var MENU_DELAY = 700;
var ANIMATION_SPEED = 200;


function menu_over () {
    var me = $(this);
    if (me.hasClass('hovered')) {
        window.clearTimeout(menu_timer);
        return false;
    }
    hide_all_menus();
    me.addClass('hovered');
    var submenu = me.siblings('ul').eq(0);
    // submenu.slideDown(300);
    submenu.fadeIn(ANIMATION_SPEED);
}

function submenu_over () {
    window.clearTimeout(menu_timer);
}

function menu_out () {
    menu_timer = window.setTimeout(hide_all_menus, MENU_DELAY);
}

function hide_all_menus () {
    $('#nav>ul>li>a').removeClass('hovered');
    // $('#nav li ul').slideUp(300);
    $('#nav li ul').fadeOut(ANIMATION_SPEED);
    window.clearTimeout(menu_timer);
}

var has_current = false;
function highlight_current_link () {
    if (has_current) {
        return false;
    }
    var me = $(this);
    if (document.location.pathname.match(me.attr('href'))) {
        me.addClass('current');
        has_current = true;
    }    
}

// DOM READY
$(function () {
    $('#nav>ul>li>a').mouseover(menu_over).mouseout(menu_out);
    $('#nav li ul').mouseover(submenu_over).mouseout(menu_out).hide();
    
    
    $('#nav>ul>li>a').reverse().each(highlight_current_link);
});

// END
})($);

