var is_active = {1: false, 2: false, 3: false, 4: false, 5: false};
var leave_menu = {1: false, 2: false, 3: false, 4: false, 5: false};
var dont_hide_menu = {1: false, 2: false, 3: false, 4: false, 5: false};
var hide_delay = 100;
var menu_logging_enabled = false;
var top_menu_swf_id = 'top_menu_swf';

var block_hover = false;

var menu_hrefs = {
	1: '/college/',
	2: '/education/',
	3: '/departments/',
	4: '/special_areas/',
	5: '/fair/'
};

function logAdd(_text) {
	if (menu_logging_enabled) {
		if ($.makeArray($('#menu_events_log')).length==0) {
			$('#' + top_menu_swf_id).after($('<div>').attr('id', 'menu_events_log'));
		}
		$('#menu_events_log').prepend($('<div/>').text(_text));
	}
}

function getHideDelay() {
	return hide_delay;
}

function show_menu(box_num, from_flash) {
	if (!from_flash && block_hover) {
		return;
	}

	if (!is_active[box_num]) {
		logAdd('JS:show_menu(' + box_num + '): not_active, activated');
		$('#menu_' + box_num).show();
		is_active[box_num] = true;
	}
	else {
		if (!from_flash) {
			dont_hide_menu[box_num] = false;
		}
		logAdd('JS:show_menu(' + box_num + '): is_active, left');
	}
	leave_menu[box_num] = true;
	if (!from_flash) {
		getFlashMovie(top_menu_swf_id).leaveSWFMenu(box_num);
	}
	else {
		dont_hide_menu[box_num] = true;
		hide_all_menus_except(box_num);

		// blocking hovers to avoid eventual hiding
		// because when we show our submenu div
		// it "mouseovers" and "mouseouts"
		// immediately if your cursor is at least
		// 1 pixel over the shown div
		block_hover = true;
		setTimeout(function () { block_hover = false; }, 50);
	}
}
function _hide_menu(box_num, from_flash, ignore) {
	if (is_active[box_num] && (!leave_menu[box_num] || ignore)) {
		logAdd('JS:hide_menu(' + box_num + (from_flash ? ', true' : '') + '): is_active, menu_hided');
		$('#menu_' + box_num).hide();
		is_active[box_num] = false;
		leave_menu[box_num] = false;
		dont_hide_menu[box_num] = false;
		if (!from_flash) {
			getFlashMovie(top_menu_swf_id).rolloutSWFMenu(box_num, true);
		}
	}
	else {
		logAdd('JS:_hide_menu(' + box_num + '): not_active');
	}
}
function hide_menu(box_num, no_timeout, from_flash) {
	if (!from_flash && block_hover) {
		return;
	}

	if (is_active[box_num] && (!dont_hide_menu[box_num] || from_flash)) {
		leave_menu[box_num] = false;
		if (no_timeout) {
			logAdd('JS:hide_menu(' + box_num + ', true' + (from_flash ? ', true' : '') + '): is_active, box_rollovered');
			_hide_menu(box_num);
		}
		else {
			logAdd('JS:hide_menu(' + box_num + (from_flash ? ', true' : '') + '): is_active, menu_hovered');
			setTimeout(function () {
				_hide_menu(box_num, from_flash);
			}, hide_delay);
		}
	}
	else {
		logAdd('JS:hide_menu(' + box_num + '): not_active');
	}
}
function hide_all_menus_except(box_num) {
	$('#submenus .submenu').each(function (index) {
		if ((index + 1) != box_num) {
			_hide_menu(index + 1, false, true);
		}
	});
}

function menu_click(box_num, from_flash) {
	logAdd('JS:menu_click(' + box_num + (from_flash ? ', true' : '') + ')');
	if (menu_hrefs[box_num]) {
		window.location.href = menu_hrefs[box_num];
	}
}


