﻿(function(jQuery) {
    function _navigationExpand(el) {
        var obj = jQuery(el);
        obj.addClass('selected');
        if ((jQuery.browser.msie) && (jQuery.browser.version.substr(0, 1) == "6")) {
            obj.children('.second-level').show();
        }
        else {
            obj.children('.second-level').fadeIn();
        }
    }

    function _navigationCollapse(el) {
        var obj = jQuery(el);
        obj.removeClass('selected');
        if ((jQuery.browser.msie) && (jQuery.browser.version.substr(0, 1) == "6")) {
            obj.children('.second-level').hide();
        }
        else {
            obj.children('.second-level').fadeOut();
        }
    }

    jQuery.fn.buildNavigation = function(options) {
        var defaults = {}, me = this;
        options = jQuery.extend(defaults, options);

        jQuery(this).find('#searchForm input[type=text]')
            .bind('focus', function(e) {
                if (jQuery(this).val() == options.search_word) {
                    jQuery(this).val('');
                }
            })
            .bind('blur', function(e) {
                if (jQuery(this).val() == '') {
                    jQuery(this).val(options.search_word);
                }
            })
            .bind('change', function(e) {
                if ((jQuery(this).val() == '') || (jQuery(this).val() == options.search_word)) {
                    me.find('#searchForm').attr('action', 'javascript: void(0);');
                }
                else {
                    me.find('#searchForm').attr('action', "javascript: document.location.href='" + options.search_url.replace('{0}', jQuery(this).val()) + "';");
                }
            })
            .bind('keypress', function(e) {
                if (e.which == 13) {
                    me.find('#searchForm').submit();
                }
            });

        return this.each(function() {
            jQuery(this).children('ul').children('li').each(function() {
                var li = jQuery(this);
                if (li.children('ul').size() > 0) {
                    li.append(
                        '<div class="second-level">' +
                            '<div class="left"></div>' +
                            '<div class="background"></div>' +
                            '<div class="right"></div>' +
                            '<div class="shadow"></div>' +
                        '</div>'
                    );
                    li.children('.second-level')
                        .append(li.children('ul'));
                }

                li.bind('mouseenter', function(e) { _navigationExpand(jQuery(this)); });
                li.bind('mouseleave', function(e) { _navigationCollapse(jQuery(this)); });
            });
        });
    };
})(jQuery);