YAHOO.util.Event.onDOMReady(fInit);

var gMenus = new Array;
var gNavMenuCount;
var gMenuPrefix = 'mainMenu_';
var gBaseURL;
var gCountryChangeURL;

function fInit() {
	// initialize the navigation bar event listeners
	var navbar = document.getElementById('nav');
	var navs = navbar.getElementsByTagName('div');
	var tbClass, items, main, j, submenu;
	gNavMenuCount = navs.length;
	for (var i = 0; i < navs.length; i++) {
		if (navs[i].className == 'hi')
			tbClass = 'bgHi';
		else
			tbClass = 'bg';
		// construct the menu (if any)
		items = navs[i].getElementsByTagName('a');
		main = '<a href="' + items[0].href + '">' + items[0].innerHTML + '</a>';
		submenu = '';
		for (j = 1; j < items.length; j++) {
			submenu += '<tr><td><a href="' + items[j].href +
					   '">' + items[j].innerHTML + '</a></td></tr>';
		}
		if (submenu.length > 0)
			submenu = '<table cellspacing="0" class="sub">' + submenu + '</table>';
		navs[i].innerHTML = '<table cellspacing="0" class="'+ tbClass + '">' +
							'<tr><td class="left"></td><td class="body">' + main +
							'</td><td class="right"></td></tr></table>';
		gMenus[gMenuPrefix + i] = submenu;
		navs[i].id = gMenuPrefix + i;
		YAHOO.util.Event.addListener(navs[i], 'mouseover', fNavMouseOver);
		YAHOO.util.Event.addListener(navs[i], 'mouseout', fNavMouseOut);
	}
	var el = document.getElementById('comblogin');
	var btns = el.getElementsByTagName('span');
	var btnHtml;
	for (i = 0; i < btns.length; i++) {
		if (btns[i].className != 'btn')
			continue;
		btnHtml = '<table cellspacing="0" class="btn"><tr><td class="left"></td>' +
				  '<td>' + btns[i].innerHTML + '</td><td class="right"></td></tr></table>';
		btns[i].innerHTML = btnHtml;
	}
	// determine the base URL base on the URL we are at
	var host = window.location.hostname;
	if (host.indexOf('vscgrpd') != -1 || host.indexOf('vscgrpp') != -1 ||
		host.indexOf('finchclub.com') != -1)
		gBaseURL = '';
	else
		gBaseURL = '/finch';
	gCountryChangeURL = gBaseURL + '/change.php';
}

function fNavMouseOver(e) {
	var x = this.getElementsByTagName('table');
	if (gMenus[this.id] == undefined) {
		x[0].className = 'bgOn';
		return;
	}
	// if it has submenu, display it
	if (gMenus[this.id].length == 0) {
		x[0].className = 'bgOn';
		return;
	}
	x[0].className = 'bgMore';
	var reg = YAHOO.util.Dom.getRegion(this);
	if (document.getElementById(this.id + '_sub') != undefined)
		return;
	// remove all other submenus
	for (var i = 0; i < gNavMenuCount; i++) {
		if (parseInt(this.id.charAt(this.id.length-1)) == i)
			continue;
		fUnhiliteMenu(document.getElementById(gMenuPrefix + i));
	} 
	var menuDiv = document.createElement('div');
	menuDiv.id = this.id + '_sub';
	menuDiv.className = 'fmenu';
	menuDiv.innerHTML = gMenus[this.id];
	document.body.appendChild(menuDiv);
	var menuBox = YAHOO.util.Region.getRegion(menuDiv);
	var menuWidth = menuBox.right - menuBox.left;
	var navWidth = reg.right - reg.left;
	if (navWidth < menuWidth)
		menuDiv.style.width = navWidth + 'px';
	else
		menuDiv.style.width = menuWidth + 'px';
	var pt = [ reg.left, reg.bottom ];
	// quick-and-dirty fix for cross-platform positioning
	if (!document.all)
		pt[1] -= 4;
	YAHOO.util.Dom.setXY(menuDiv, pt);
	// setup menu row mouseover
	var rows = menuDiv.getElementsByTagName('tr');
	for (i = 0; i < rows.length; i++) {
		YAHOO.util.Event.addListener(rows[i], 'mouseover', fSubRowOver);
		YAHOO.util.Event.addListener(rows[i], 'mouseout', fSubRowOut);
		YAHOO.util.Event.addListener(rows[i], 'click', fSubRowClick);
	}
}

function fNavMouseOut(e) {
	var childId = this.id + "_sub";
	if (document.getElementById(childId) == undefined)
		fUnhiliteMenu(this);
	else {
		var reg = YAHOO.util.Dom.getRegion(childId);
		var mXY = YAHOO.util.Event.getXY(e);
		var mReg = { left: mXY[0], top: mXY[1], right: mXY[0], bottom: mXY[1] };
		if (!reg.contains(mReg)) {
			fUnhiliteMenu(this);
		}
	}
}


function fUnhiliteMenu(navDiv) {
	var x = navDiv.getElementsByTagName('table');
	if (navDiv.className == 'hi') {
		x[0].className = 'bgHi';
	} else {
		x[0].className = 'bg';
	}
	var sub = document.getElementById(navDiv.id + '_sub');
	if (sub == undefined) {
		return;
	}
	// YAHOO.util.Event.removeListener(sub, 'mouseout', fSubMouseOut);
	// al('remove ' + sub.id);
	document.body.removeChild(sub);
}

function fSubRowOver(e) {
	/* YAHOO.util.Dom.setStyle(this, 'backgroundColor', "#0081b7");
	YAHOO.util.Dom.setStyle(this, 'color', "#ffffff"); */
	this.className = 'hi';
}


function fSubRowOut(e) {
	/* YAHOO.util.Dom.setStyle(this, 'backgroundColor', "");
	YAHOO.util.Dom.setStyle(this, 'color', ""); */
	this.className = '';
}

function fSubRowClick(e) {
	/* YAHOO.util.Dom.setStyle(this, 'backgroundColor', "");
	YAHOO.util.Dom.setStyle(this, 'color', ""); */
	var x = this.getElementsByTagName('a');
	window.location = x[0].href;
}


function al(str) {
	document.getElementById('debug').innerHTML = str;
}

function fChangeCountry() {
	var el = document.getElementById('change');
	window.location = gCountryChangeURL + '?cn=' + el.options[el.selectedIndex].value;
}