$(document).ready(function () {

	$(".side-menu").each(function () {
		var triggerId = $(this).parent().find(".side-menu-img").attr("id");
		var menuId = $(this).attr("id");

		initMenu(triggerId, menuId);
	});
});

var _menuTimer = null;
var _menuTimerSub = null;
var _lastIndex = -1;
var $_menu = null;
var $_menuSub = null;
var $_menuHeaders = null;
var $_menuButton = null;

function initMenu(triggerId, menuId) {
	$_menu = $('#' + menuId);
	$_menuHeaders = $_menu.find("li");
	$_menuButton = $('#' + triggerId);

	$_menuHeaders.each(function (i) {
		var $subul = $(this).find("ul").eq(0);
		$(this).hover(function (e) {
			$(this).addClass("side-menu-hover");

			if ($subul.size()) {
				if ((_lastIndex != i) && $_menuSub == null) {
				}
				if ((_lastIndex != i) && $_menuSub != null) {
					$_menuSub.fadeOut();
				}

				_lastIndex = i;
				$_menuSub = $subul;
				$subul.fadeIn();
				$subul.hover(function (e) {
				},
				function (e) {
					//$_menuSub.fadeOut();
				});
				clearTimeout(_menuTimer);
				clearTimeout(_menuTimerSub);
			}
			else {
				if ($_menuSub != null && _menuTimerSub == null)
					$_menuSub.fadeOut();
			}
		},
		function (e) {
			$(this).removeClass("side-menu-hover");
			if ($subul.size())
				_menuTimerSub = setTimeout('$_menuSub.fadeOut();', 800);
		});
	});

	$_menuButton.mouseover(function (e) {
		if ($_menu != null)
			$_menu.fadeOut();

		clearTimeout(_menuTimer);
		$_menu = $(this).parent().parent().children('.side-menu');
		$_menu.fadeIn();
	});

	$_menuButton.mouseout(function () {
		_menuTimer = setTimeout("$_menu.fadeOut();", 800);
	});

	$_menu.mouseover(function (e) {
		clearTimeout(_menuTimer);
	});

	$_menu.mouseout(function () {
		_menuTimer = setTimeout("$_menu.fadeOut();", 800);
	});
}
