(function($) {
	$(function() {
		var t; // Timeout holder
		var timeout = 500; // 500ms

		var default_menu = $('ul#main-menu li.item.active');
		var first_menu = $('ul#main-menu li.item.first');
		var default_item = $('ul.menu.section-menu.expanded'); // Default expanded item

		var previous_menu_item = default_menu;

		$('ul#main-menu li.item').mouseover(function(e) {
			clearTimeout(t);
			// Find list item
			var item = $(this);

			if (item.data('mid') != first_menu.data('mid')) {
				first_menu.removeClass('active rounded-top');
			}

			if (item.data('mid')) {
				default_menu.removeClass('active rounded-top');
			}

			item.addClass('active rounded-top');

			// Find menu item unique id
			var mid = item.data('mid');
			var section_menu = $('ul#section-menu-' + mid);
			
			if (item.is('ul#main-menu li.item') && section_menu.length == 1) { // Only shift if main-menu item
				// Hide all shown section menus
				$('ul.menu.section-menu.expanded').removeClass('expanded');

				// Show newly selected section
				section_menu.addClass('expanded');
			}
		}).mouseout(function(e) {
			clearTimeout(t);

			var item = $(this);

			item.removeClass('active rounded-top');
			previous_menu_item = item;

			var mid = item.data('mid');
			var section_menu = $('ul#section-menu-' + mid);

			// Reset to default
			t = setTimeout(function() {
				$('ul.menu.section-menu.expanded').removeClass('expanded');

				default_item.addClass('expanded');

				default_menu.addClass('active rounded-top');
			}, timeout);
		});

		$('ul.section-menu').mouseover(function(e) {
			clearTimeout(t);
			previous_menu_item.addClass('active rounded-top');
		}).mouseout(function(e) {
			clearTimeout(t);

			var item = $(this);

			var mid = item.data('mid');
			var section_menu = $('ul#section-menu-' + mid);
			previous_menu_item.removeClass('active rounded-top');

			// Reset to default
			t = setTimeout(function() {
				$('ul.menu.section-menu.expanded').removeClass('expanded');
				default_item.addClass('expanded');
				default_menu.addClass('active rounded-top');
				previous_menu_item = default_item;
			}, timeout);
		});
	});
})(jQuery);


