﻿Sawbuck = window.Sawbuck || {}; Sawbuck.ToggleMenu = function() {
	function menuOpen() { jQuery(this).addClass("hover"); jQuery(this).parent().addClass("on"); jQuery('ul:first', this).css('visibility', 'visible').siblings("div.coverLine").css('visibility', 'visible'); }
	function menuClose() { jQuery(this).removeClass("hover"); jQuery(this).parent().removeClass("on"); jQuery('ul:first', this).css('visibility', 'hidden').siblings("div.coverLine").css('visibility', 'hidden'); }
	function initializeMenus() { var config = { sensitivity: 3, interval: 200, over: menuOpen, timeout: 200, out: menuClose }; jQuery("ul.dropdown li").hoverIntent(config); var menus = jQuery("ul.dropdown ul"); menus.each(function() { var borderWidth = 2; var $this = jQuery(this); var parent_width = $this.parent().width(); var menu_width = $this.width(); var newWidth = Math.max(parent_width - borderWidth, menu_width); var links = $this.children("li").children("a"); var linkPadding = parseInt(links.css("padding-left"), 10) + parseInt(links.css("padding-right"), 10); try { $this.css("display", "block").width(newWidth + "px").css("left", parent_width - borderWidth - newWidth).css("top", $this.position().top - 1).siblings("div.coverLine").width(parent_width - borderWidth).css("top", $this.position().top); links.css("width", (newWidth - linkPadding) + "px"); } catch (e) { }; }); jQuery("ul.dropdown ul li a").live("click", function() { $j(this).trigger("mouseout"); menuClose.apply($j(this).parent()); }); }
	function resetMenus() { var menus = jQuery("ul.dropdown ul"); menus.each(function() { var borderWidth = 2; var $this = jQuery(this); var parent_width = $this.parent().width(); $this.width("auto"); var menu_width = $this.width(); var newWidth = Math.max(parent_width - borderWidth, menu_width); var links = $this.children("li").children("a"); var linkPadding = parseInt(links.css("padding-left"), 10) + parseInt(links.css("padding-right"), 10); try { $this.css("display", "block"); $this.css("left", parent_width - borderWidth - newWidth).css("top", $this.parent().height() - 1); $this.width(newWidth + "px").siblings("div.coverLine").width(parent_width - borderWidth).css("top", $this.position().top); } catch (e) { }; links.css("width", (newWidth - linkPadding) + "px"); }); jQuery("ul.dropdown").css("overflow", "visible"); }
	return { toggleMenu: function(menu) {
		if (jQuery(menu).parent().parent().hasClass("on")) { jQuery("ul.dropdown.on .menu").siblings().css('visibility', 'hidden'); jQuery("ul.dropdown").removeClass("on"); return false; }
		jQuery(menu).siblings().css('visibility', 'visible'); var ul = jQuery(menu).parent().parent(); ul.addClass("on"); return false;
	}, init: function() { initializeMenus(); }, resetMenus: function() { resetMenus(); } }
	} (); jQuery(function($) { Sawbuck.ToggleMenu.init(); });