//------FOR PRELOADING IMAGES
path = "http://www.prudentiallocations.com/imgs/generic/"; //path to images
pathUrl="http://www.prudentiallocations.com/";
 
// path = "http://www.pruhawaii.com/imgs/generic/"; //path to images
// pathUrl="http://www.pruhawaii.com/";

function newImage(arg) {
 if (document.images) {
  rslt = new Image();
  rslt.src = arg;
  return rslt;
 }
}
 
var preloadFlag = false;
//----------------------

var isDOM = (document.getElementById ? true : false); 
var isIE4 = ((document.all && !isDOM) ? true : false);
var isNS4 = (document.layers ? true : false);


function getRef(id) {
	if (isDOM) return document.getElementById(id);
	if (isIE4) return document.all[id];
	if (isNS4) return document.layers[id];
}

function getSty(id) {
	return (isNS4 ? getRef(id) : getRef(id).style);
} 

var popTimer = 0;
var litNow = new Array();

function popOver(menuNum, itemNum) {
	clearTimeout(popTimer);
	hideAllBut(menuNum);
	litNow = getTree(menuNum, itemNum);
	changeCol(litNow, true);
	targetNum = menu[menuNum][itemNum].target;
	if (targetNum > 0) {
		thisX = parseInt(menu[menuNum][0].ref.left) + parseInt(menu[menuNum][itemNum].ref.left);
		thisY = parseInt(menu[menuNum][0].ref.top) + parseInt(menu[menuNum][itemNum].ref.top);
		with (menu[targetNum][0].ref) {
			left = "" + parseInt(thisX + menu[targetNum][0].x )+"px";
			top = "" + parseInt(thisY + menu[targetNum][0].y)+"px";
			visibility = 'visible';
		}
	}
}

function popOut(menuNum, itemNum) {
	if ((menuNum == 0) && !menu[menuNum][itemNum].target)
		hideAllBut(0)
	else
		popTimer = setTimeout('hideAllBut(0)', 500);
}

function getTree(menuNum, itemNum) {
	itemArray = new Array(menu.length);
	while(1) {
		itemArray[menuNum] = itemNum;
		if (menuNum == 0) return itemArray;
		itemNum = menu[menuNum][0].parentItem;
		menuNum = menu[menuNum][0].parentMenu;
	}
}

function changeCol(changeArray, isOver) {
	for (menuCount = 0; menuCount < changeArray.length; menuCount++) {
		if (changeArray[menuCount]) {
			newCol = isOver ? menu[menuCount][0].overCol : menu[menuCount][0].backCol;
			with (menu[menuCount][changeArray[menuCount]].ref) {
				if (isNS4) bgColor = newCol;
				else backgroundColor = newCol;
			}
		}
	}
}
function hideAllBut(menuNum) {
	var keepMenus = getTree(menuNum, 1);
	for (count = 0; count < menu.length; count++)
		if (!keepMenus[count]) menu[count][0].ref.visibility = 'hidden';
	changeCol(litNow, false);
}

// *** MENU CONSTRUCTION FUNCTIONS ***

function Menu(isVert, popInd, x, y, width, overCol, backCol, borderClass, textClass) {
	this.isVert = isVert;
	this.popInd = popInd;
	this.x = x;
	this.y = y;
	this.width = width;
	this.overCol = overCol;
	this.backCol = backCol;
	this.borderClass = borderClass;
	this.textClass = textClass;
	this.parentMenu = null;
	this.parentItem = null;
	this.ref = null;
}

function Item(text, href, frame, length, spacing, target) {
	this.text = text;
	this.href = href;
	this.frame = frame;
	this.length = length;
	this.spacing = spacing;
	this.target = target;
	this.ref = null;
}

function writeMenus() {
 //------FOR PRELOADING IMAGES
 if (document.images) {
  newImage(path+"nav_aboutHawaii_a.gif");
  newImage(path+"nav_aboutUs_a.gif");
  newImage(path+"nav_buyers_a.gif");
  newImage(path+"nav_finance_a.gif");
  newImage(path+"nav_home_a.gif");
  newImage(path+"nav_myHomeBase_a.gif");
  newImage(path+"nav_otherServices_a.gif");
  newImage(path+"nav_sallers_a.gif");
  newImage(path+"nav_search_a.gif");
  newImage(path+"nav_sellers_a.gif");
  
  preloadFlag = true;
 }
 //------------------------
	if (!isDOM && !isIE4 && !isNS4) return;

	for (currMenu = 0; currMenu < menu.length; currMenu++) with (menu[currMenu][0]) {
		var str = '', itemX = 0, itemY = 0;
		for (currItem = 1; currItem < menu[currMenu].length; currItem++) with (menu[currMenu][currItem]) {
			var itemID = 'menu' + currMenu + 'item' + currItem;
			var w = (isVert ? width : length);
			var h = (isVert ? length : width);
			if (isDOM || isIE4) {
				str += '\n<div id="' + itemID + '" style="position:absolute; left:' + itemX + 'px; top:' + itemY + 'px; width:' + w + 'px; height:' + h + 'px; visibility:';
				if (currMenu == 0) str += 'hidden; '; //hide top-level menu
				else str += 'inherit; ';
				if (backCol) str += 'background: ' + backCol + '; ';
				str += '" ';
			} else {
				if (isNS4) {
					str += '\n<layer id="' + itemID + '" left="' + itemX + '" top="' + itemY + '" width="' +  w + '" height="' + h + '" visibility=';
					if (currMenu == 0) str += '"hidden" ';
					else str += '"inherit" ';
					if (backCol) str += 'bgcolor="' + backCol + '" ';
				}
			}
			if (borderClass) str += 'class="' + borderClass + '" ';
			str += 'onMouseOver="popOver(' + currMenu + ',' + currItem + ')" onMouseOut="popOut(' + currMenu + ',' + currItem + ')">';
			str += '\n  <table width="' + (w - 8) + '" border="0" cellspacing="0" cellpadding="' + (!isNS4 && borderClass ? 3 : 5) + '"><tr>';
			var targetframe = (frame ? ' target="' + frame + '"' : '');
			var linkto =  (href=='#') ? '' : ' href="' + href + '"' + targetframe;
			var clickjs = (href=='#') ? '' : ' onclick=document.location.href="' + href + '"';
			str += '<td align="left" height="' + (h - 1) + '"' + clickjs + '>';
			str += '<a class="' + textClass + '"' + linkto + ' style="color: #036">' + text + '</a></td>';
			if (target > 0) {
				menu[target][0].parentMenu = currMenu;
				menu[target][0].parentItem = currItem;
				if (popInd) str += '<td class="' + textClass + '" align="right">' + popInd + '</td>';
			}
			str += '</tr>\n  </table>' + (isNS4 ? '\n</layer>' : '\n</div>');
			if (isVert) itemY += length + spacing;
			else itemX += length + spacing;
		}
		if (isDOM) {
			var newDiv = document.createElement('div');
			var oBody = document.getElementsByTagName('body').item(0);
			ref = newDiv.style;
			ref.left = x+"px";
			ref.top = y+"px";
			ref.position = 'absolute';
			ref.visibility = 'hidden';
			newDiv.innerHTML = str;
			oBody.appendChild(newDiv);
		}
		if (isIE4) {
			document.body.insertAdjacentHTML('beforeEnd', '<div id="menu' + currMenu + 'div" ' + 'style="position: absolute; visibility: hidden">' + str + '</div>');
			ref = getSty('menu' + currMenu + 'div');
		}

		if (isNS4) {
			ref = new Layer(0);
			ref.document.write(str);
			ref.document.close();
		}

		for (currItem = 1; currItem < menu[currMenu].length; currItem++) {
			itemName = 'menu' + currMenu + 'item' + currItem;
			if (isDOM || isIE4) menu[currMenu][currItem].ref = getSty(itemName);
			if (isNS4) menu[currMenu][currItem].ref = ref.document[itemName];
		   }
	}
	with(menu[0][0]) {
	ref.left = (document.body.clientWidth - 750)/2+"px"; //if menu is centered on the page (750 is the total width of the menu)
//	ref.left = x+"px";									//if menu has fixed x coordinate
	ref.top = y+"px";
//	ref.visibility = 'visible'; //do not show top level menu
	}
}

// call recenter() on BODY onresize event to recenter menu each time when user resizes browser window
// 750 is the total width of the menu
function recenter() {
	with(menu[0][0]) {
		ref.left = (document.body.clientWidth - 750)/2+"px";
	}

}

var menu = new Array();
var defBack = '#f0f7fd';
var defOver = '#dae8f3'; 
var defLength = 22;
var TopMenuPrefix = '';
var NextLevelPointer = '<IMG src="images/menuNext.gif" align="right" height=10 width=9 border=0 alt="">';

// menu[menuNumber][0] = new Menu(Vertical menu? (true/false), 'popout indicator', left, top,
// width, 'mouseover color', 'background color', 'border stylesheet', 'text stylesheet');
//
// menu[menuNumber][itemNumber] = new Item('Text', 'URL', 'target frame', length of menu item,
//  additional spacing to next menu item, number of target menu to popout);

//Top menu
menu[0] = new Array();
menu[0][0] = new Menu(false, '', 16, MenuOffset, 28, defOver, defBack, '', 'itemText');
menu[0][1] = new Item(TopMenuPrefix + 'Home',     '#', '', 75,  0, 0);
menu[0][2] = new Item(TopMenuPrefix + 'Search',   '#', '', 98,  0, 1);
menu[0][3] = new Item(TopMenuPrefix + 'MyHmeBse', '#', '', 140, 0, 2);
menu[0][4] = new Item(TopMenuPrefix + 'Byrs'  ,   '#', '', 58,  0, 3);
menu[0][5] = new Item(TopMenuPrefix + 'Sllrs',    '#', '', 58,  0, 4);
menu[0][6] = new Item(TopMenuPrefix + 'About',    '#', '', 66,  0, 5);
menu[0][7] = new Item(TopMenuPrefix + 'About H',  '#', '', 88,  0, 6);
menu[0][8] = new Item(TopMenuPrefix + 'Other Srv','#', '', 100, 0, 7);
menu[0][9] = new Item(TopMenuPrefix + 'Finance',  '#', '', 66,  0, 8);

// Search submenu
menu[1] = new Array();
menu[1][0] = new Menu(true, '', 0, 60, 140, defOver, defBack, 'itemBorder', 'itemText');
menu[1][1] = new Item('Power Search', pathUrl+'powerSearch.asp', '', defLength, 0, 0);
menu[1][2] = new Item('Open House Search', pathUrl+'openHouseSearch.asp', '', defLength, 0, 0);
menu[1][3] = new Item('Fine Homes Search',pathUrl+ 'fineSearch.asp', '', defLength, 0, 0);
menu[1][4] = new Item('Proximity Search', pathUrl+'proximitySearch.asp', '', defLength, 0, 0);
menu[1][5] = new Item('Address Search', pathUrl+'addressSearch.asp', '', defLength, 0, 0);
menu[1][6] = new Item('Building Search', pathUrl+'buildingSearch.asp', '', defLength, 0, 0);

// MyHomeBase submenu
menu[2] = new Array();
menu[2][0] = new Menu(true, '', 0, 60, 140, defOver, defBack, 'itemBorder', 'itemText');
menu[2][1] = new Item('Learn More',pathUrl+'MHB_LearnMore.asp', '', defLength, 0, 0);

// Buyers submenu
menu[3] = new Array();
menu[3][0] = new Menu(true, '', 0, 60, 140, defOver, defBack, 'itemBorder', 'itemText');
menu[3][1] = new Item('Process', pathUrl+'buyers_process.asp', '', defLength, 0, 0);
menu[3][2] = new Item('First Time Homebuyers', pathUrl+'buyers_firsttime.asp', '', defLength, 0, 0);
menu[3][3] = new Item('Investors', pathUrl+'buyers_investors.asp', '', defLength, 0, 0);
menu[3][4] = new Item('Guides &amp; Tools', pathUrl+'buyers_tools.asp', '', defLength, 0, 0);
menu[3][5] = new Item('Helpful Articles', pathUrl+'buyers-content.asp', '', defLength, 0, 0);
menu[3][6] = new Item('FAQs',pathUrl+ 'buyers_faq.asp', '', defLength, 0, 0);

// Sellers submenu
menu[4] = new Array();
menu[4][0] = new Menu(true, '', 0, 60, 140, defOver, defBack, 'itemBorder', 'itemText');
menu[4][1] = new Item('Process',pathUrl+ 'sellers_process.asp', '', defLength, 0, 0);
menu[4][2] = new Item('Helpful Tips', pathUrl+'sellers_tips.asp', '', defLength, 0, 0);
menu[4][3] = new Item('Helpful Articles', pathUrl+'sellers-content.asp', '', defLength, 0, 0);
menu[4][4] = new Item('FAQs',pathUrl+ 'sellers_faq.asp', '', defLength, 0, 0);

// About us submenu
menu[5] = new Array();
menu[5][0] = new Menu(true, '', 0, 60, 140, defOver, defBack, 'itemBorder', 'itemText');
menu[5][1] = new Item('Our Agents',pathUrl+ 'selectanagent.asp', '', defLength, 0, 0);
menu[5][2] = new Item('Press Releases', pathUrl+'pressrelease.asp', '', defLength, 0, 0);
menu[5][3] = new Item('Careers',pathUrl+ 'aboutus_careers.asp', '', defLength, 0, 0);
menu[5][4] = new Item('Foundation',pathUrl+'aboutus_foundation.asp', '', defLength, 0, 0);
menu[5][5] = new Item('Testimonials',pathUrl+ 'aboutus_testimonials.asp', '', defLength, 0, 0);
menu[5][6] = new Item('Contact Us', pathUrl+'aboutus_contactus.asp', '', defLength, 0, 0);

// About Hawaii submenu
menu[6] = new Array();
menu[6][0] = new Menu(true, '', 0, 60, 140, defOver, defBack, 'itemBorder', 'itemText');
menu[6][1] = new Item('Moving to Hawaii',pathUrl+'abouthi_moving.asp', '', defLength, 0, 0);
menu[6][2] = new Item('Local Information', pathUrl+'neighborhoods.asp', '', defLength, 0, 0);
menu[6][3] = new Item('Helpful Tips', pathUrl+'abouthi_tips.asp', '', defLength, 0, 0);
menu[6][4] = new Item('Helpful Articles', pathUrl+'about-hawaii-content.asp', '', defLength, 0, 0);

// Other Services submenu
menu[7] = new Array();
menu[7][0] = new Menu(true, '', 0, 60, 140, defOver, defBack, 'itemBorder', 'itemText');
menu[7][1] = new Item('Fine Homes', 'services_finehomes.asp', '', defLength, 0, 0);
menu[7][2] = new Item('New Homes Projects',pathUrl+ 'services_projects.asp', '', defLength, 0, 0);
menu[7][3] = new Item('Property Management', pathUrl+'prupropmng_index.asp', '', defLength, 0, 0);
menu[7][4] = new Item('Research', pathUrl+'services_research.asp', '', defLength, 0, 0);
menu[7][5] = new Item('Home Partner', pathUrl+'services_homepartner.asp', '', defLength, 0, 0);
menu[7][6] = new Item('LRC Inc.', pathUrl+'services_lrc.asp', '', defLength, 0, 0);

// Finance submenu
menu[8] = new Array();
menu[8][0] = new Menu(true, '', 0, 60, 140, defOver, defBack, 'itemBorder', 'itemText');
menu[8][1] = new Item('Helpful Tips',pathUrl+ 'finance_articles.asp', '', defLength, 0, 0);
menu[8][2] = new Item('In-Depth Guides',pathUrl+ 'finance_guides.asp', '', defLength, 0, 0);
menu[8][3] = new Item('Calculators', pathUrl+'finance_calculators.asp', '', defLength, 0, 0);
menu[8][4] = new Item('Helpful Articles', pathUrl+'finance-content.asp', '', defLength, 0, 0);
