/////////////////////////////////////////////////////////////////////////////////////////////////////
// Developer	: Chris Hack
// Date			: 2006/11/11
// Description	: This module provides dynamic content for the Toolbar.ascx page elements
// Dependencies : const.js, screen.js, utils.js, load.js
/////////////////////////////////////////////////////////////////////////////////////////////////////

// Elements
var toolbarButtonHome;
var toolbarButtonTour;
var toolbarButtonMyPortfolios;
var toolbarButtonSitemap;
var toolbarButtonHelp;
var menuMyPortfolios;
var menuMyPortfoliosItems = new Array();
var menuHelp;
var menuHelpItems = new Array();

/////////////////////////////////////////////////////////////////////////////////////////////////////
// Bind event handlers to elements in the toolbar page
/////////////////////////////////////////////////////////////////////////////////////////////////////

function bindToolbarElements() {
	var i;
	
	// Dereference all elements on this page
	toolbarButtonHome = document.getElementById("ToolbarButtonHome");
	toolbarButtonTour = document.getElementById("ToolbarButtonTour");
	toolbarButtonMyPortfolios = document.getElementById("ToolbarButtonMyPortfolios");
	toolbarButtonHelp = document.getElementById("ToolbarButtonSitemap");
	toolbarButtonHelp = document.getElementById("ToolbarButtonHelp");
	menuMyPortfolios = document.getElementById("MenuMyPortfolios");
	
	// Only logged in users will have a menu for my portfolios
	if (menuMyPortfolios) {
		menuMyPortfolios = new Menu(menuMyPortfolios, toolbarButtonMyPortfolios);	
		i = 1;
		while (document.getElementById("MenuMyPortfoliosItem" + i)) {
			menuMyPortfoliosItems.push(document.getElementById("MenuMyPortfoliosItem" + i));
			i++;
		}
	}
	
	menuHelp = new Menu(document.getElementById("MenuHelp"), toolbarButtonHelp);	
	
	menuHelpItems.push(document.getElementById("MenuHelpAboutUs"));
	menuHelpItems.push(document.getElementById("MenuHelpContactUs"));
	menuHelpItems.push(document.getElementById("MenuHelpGlossary"));
	menuHelpItems.push(document.getElementById("MenuHelpFAQ"));
	menuHelpItems.push(document.getElementById("MenuHelpAdvertise"));

	// toolbarButtonMyPortfolios Events
	if (menuMyPortfolios)
		toolbarButtonMyPortfolios.onmouseover = toolbarButtonMyPortfolios_MouseOver;
	
	// MyPortfolios menu items events
	for (i = 0; i < menuMyPortfoliosItems.length; i++) {
		menuMyPortfoliosItems[i].onmouseover = menuItem_MouseOver;
		menuMyPortfoliosItems[i].onmouseout = menuItem_MouseOut;
		menuMyPortfoliosItems[i].onclick = menuItem_Click;
	}
	
	// toolbarButtonHelp Events
	toolbarButtonHelp.onmouseover = toolbarButtonHelp_MouseOver;
	
	// Help menu items events
	toolbarButtonHelp.onclick = function(){return false;}
	for (i = 0; i < menuHelpItems.length; i++) {
		menuHelpItems[i].onmouseover = menuItem_MouseOver;
		menuHelpItems[i].onmouseout = menuItem_MouseOut;
		menuHelpItems[i].onclick = menuItem_Click;
	}
	
} // bindHeaderElements

registerLoadHandler(bindToolbarElements);

/////////////////////////////////////////////////////////////////////////////////////////////////////


/////////////////////////////////////////////////////////////////////////////////////////////////////
// Event handlers
/////////////////////////////////////////////////////////////////////////////////////////////////////
function toolbarButtonMyPortfolios_MouseOver() {
	// Set the position of the My Portfolios popup menu
	setElementX(menuMyPortfolios.element, getElementX(toolbarButtonMyPortfolios));
	
	// Show the popup menu for my portfolios
	menuMyPortfolios.show();	
	
}// toolbarButtonMyPortfolios_MouseOver
/////////////////////////////////////////////////////////////////////////////////////////////////////

function toolbarButtonHelp_MouseOver() {
	// Set the position of the My Portfolios popup menu
	setElementX(menuHelp.element, getElementX(toolbarButtonHelp));
	
	// Show the popu menu for help
	menuHelp.show();
	
}// toolbarButtonHelp_MouseOver
/////////////////////////////////////////////////////////////////////////////////////////////////////

function menuItem_MouseOver() {
	this.className = "MenuItemHover";
}// menuItem_MouseOver
/////////////////////////////////////////////////////////////////////////////////////////////////////

function menuItem_MouseOut() {
	this.className = "MenuItem";
}// menuItem_MouseOut 
/////////////////////////////////////////////////////////////////////////////////////////////////////

function menuItem_Click() {
	document.location = this.getAttribute("link");
}// menuItem_Click
/////////////////////////////////////////////////////////////////////////////////////////////////////
