//*********************************************************************************************//
// FUNCTION.JS 
//*********************************************************************************************//

preloadflag = true;

<!--

	var V = navigator.appVersion.substring(0,1);
	var brsr = 0;
	if (V < 4) {
		top.alert("This site uses java to support its major navigation.\n You may have trouble viewing the site");
	} else if (navigator.appName.indexOf("Netscape") > -1) {

	} else if (navigator.appName.indexOf("Explorer") > -1) {
			var T = navigator.appVersion.indexOf("MSIE");
			T += 5;
			V = navigator.appVersion.substring(T,eval(T+1));
	}
	if (navigator.appName.indexOf("Netscape") > -1) {
		brsr = 1;
	} else if (navigator.appName.indexOf("Explorer") > -1) {
		if (V < 5) {

		} else {
			brsr = 2;
		}
	}



// used to overwrite old method for tracking Google Analytics
// so that we can log to two separate reports using the new code
function urchinTracker(urlStr) {
	// main sites page tracker - add the /green/ directory to the front
    gaTrackerSpecific._trackPageview(urlStr);
	// micro sites page tracker
    gaTrackerCommon._trackPageview(urlStr);
}




//	top.alert(navigator.appVersion +"\n"+ navigator.appName +"\n"+ V +"\n"+ brsr);

function switchEmail (NAME,EMAIL) {
	document.sendform.attn.value = NAME;
	document.sendform.recipient.value = EMAIL;
	document.sendform.dumbattn.value = NAME;
	document.sendform.dumbrecipient.value = EMAIL;
}


// 2005.10.20 - al added - market report popup call
function marketReportPopUp(page) {
	mrwin = window.open(page,'mrwin','width=850,height=650,top=50,left=50,resizable=0,menubar=0,location=0,scrollbars=0,status=1,toolbar=0');
	mrwin.focus();
}

// 2006.03.22 - al added - appraisal request popup win
function appraisalRequestPopUp(page) {
	arwin = window.open(page,'arwin','width=850,height=650,top=150,left=150,resizable=1,menubar=1,location=1,scrollbars=1,status=1,toolbar=1');
	arwin.focus();
}

// 2006.03.30 - al added - mortgage quote popup win
function mortgageQuotePopUp(page) {
	mqwin = window.open(page,'mqwin','left=100,top=100,width=450,height=600,toolbar=0,status=0,menubar=0,scrollbars=1,resizable=auto');
	mqwin.focus();
}

// 2006.11.09 - al added - region video popup win
function regionVideoPopUp(page) {
	rvwin = window.open(page,'rvwin','left=100,top=100,width=450,height=450,toolbar=0,status=0,menubar=0,scrollbars=1,resizable=auto');
	rvwin.focus();
}

// 2007.01.21 - al added - listing video popup win
function propertyVideoPopUp(page) {
	pvwin = window.open(page,'pvwin','left=100,top=100,width=530,height=360,toolbar=0,status=0,menubar=0,scrollbars=1,resizable=auto');
	pvwin.focus();
}

// 2007.01.21 - changed to hide quick contact form url due to spamming
function quickContactPopUp(sendtype, sendid) {
	pvwin = window.open('/utilities/contact_now.php?send_type='+ sendtype +'&send_id='+ sendid,'qcwin','left=100,top=100,width=470,height=350,toolbar=0,status=0,menubar=0,scrollbars=1,resizable=auto');
	pvwin.focus();
}

function centerPop(page,w,h){

if (w < 1) {
	w = 650
}
if (h < 1) {
	h = 650
}

var width
var height
var leftdist
var topdist
width = screen.width;
height = screen.height;
leftdist = Math.round((width - w) / 2);
topdist = Math.round((height - h) / 2);

gwin = window.open(page,'gwin','width='+ w +',height='+ h +',top='+topdist+',left='+leftdist+',resizable=1,menubar=0,location=0,scrollbars=1,status=1,toolbar=0');
gwin.focus();

}



	function PopWin(HEIGHT,WIDTH,URL) {
		var PopWin = window.open(URL,'PopWin',"width="+ WIDTH +",height="+ HEIGHT +",scrollbars=0,toolbar=0,location=0,directories=0,status=0,menubar=0,resizable=0");
		PopWin.focus()
	}

	function newImage(arg) {
		if (document.images) {
			rslt = new Image();
			rslt.src = arg;
			return rslt;
		}

		//img_on	= newImage("/pics/index_nav/index_con.gif");
		//img_off	= newImage("/pics/index_nav/index_con.gif");
	}

	function resWin(page) {
		var resWin = window.open(page,'resWIn',"width=499,height=333,scrollbars=0,toolbar=1,location=0,directories=0,status=1,menubar=0,resizable=1");
		resWin.open
	}

	function changeImages() {
	//	if (document.images && (preloadFlag == true)) {
			for (var i=0; i<changeImages.arguments.length; i+=3) {
			//  top.alert (document.layers[i].document[changeImages.arguments[i+1]].name)
			//document.layers[changeImages.arguments[i]].document[changeImages.arguments[i+1]].src = eval(changeImages.arguments[i+2]+".src");
				if (brsr == 1) {
			//		if (changeImages.arguments[i] != '') {
			//			document[changeImages.arguments[i+1]].src = eval(changeImages.arguments[i+2]+".src")
			//		} else {
						document[changeImages.arguments[i+1]].src = eval(changeImages.arguments[i+2]+".src")
			//		}
				}
				if (brsr == 2) {
					document[changeImages.arguments[i+1]].src = eval(changeImages.arguments[i+2]+".src")
				}
			}
	//	}
	}
	function changeImagesStr() {
			for (var i=0; i<changeImagesStr.arguments.length; i+=3) {
				if (brsr == 1) {
						document[changeImagesStr.arguments[i+1]].src = changeImagesStr.arguments[i+2]
				}
				if (brsr == 2) {
					document[changeImagesStr.arguments[i+1]].src = changeImagesStr.arguments[i+2]
				}
			}
	}

	function rollOver (item,state) {
		if (state) {
			changeImages('','i'+item,'i'+item+'_on');
		} else {
			changeImages('','i'+item,'i'+item+'_off');
		}
	}

	function setClass() {
		var args=setClass.arguments;
		var ston = 0;

		if (brsr != 0) {
			for (i = ston; i<(args.length-1); i+=2) {
				var obj = args[i];
				var cls = args[i+1];
				if (brsr == 1 && V >= 5) {
					//alert('document.getElementById(' + obj + ').className = ' + cls);
					document.getElementById(obj).className = cls;
				}
				if (brsr == 2) {
					if (document.all[obj]) {
						document.all[obj].className = cls;
					}
				}
			}
		}
	}

	function showHideLayers() {
		var args=showHideLayers.arguments;
		var ston = 1;
		var baser = args[0];

		if (brsr != 0) {
			for (i = ston; i<(args.length-1); i+=2) {
				var obj = args[i];
				var vis = args[i+1];
				if (brsr == 1 && V < 5) {
						if (document.layers[obj]) document.layers[obj].visibility = vis;
				}
				if (brsr == 1 && V >= 5) {
					if (document.getElementById(obj)) {
						document.getElementById(obj).style.visibility = vis;
					}
				}
				if (brsr == 2) {
					if (document.all[obj]) {
						document.all[obj].style.visibility = vis;
					}
				}
			}
		}
	}



	function delayHide() {
			if (t==0) {
					removeall();
					lCount = 0;
			}
			if (t==2) {
					lCount = 0;
			}
			if (t==1) {
					lCount = lCount + 1;
					if (lDelay <= lCount) {
							t = 0;
					}
					if (lDelay >= lCount) {
							setTimeout('delayHide(' + t + ')',pause);
					}
			}
			return false;
	}



function MM_findObj(n, d) { //v3.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}
/* Functions that swaps images. */
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

/* Functions that handle preload. */
function MM_preloadImages() { //v3.0
 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
   var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
   if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}



	function UtilityWin(PG) {
		var UtilityWindow = window.open(PG,"UtilityWindow","left=100,top=100,width=470,height=300,toolbar=0,status=0,menubar=0,scrollbars=1,resizable=auto");
		UtilityWindow.focus();
	}

	function UtilityClose () {
		opener.reload();
		self.close();
	}

	function HelpWin(PG) {
		var HelpWindow = window.open(PG,"HelpWindow","left=200,top=200,width=470,height=300,toolbar=1,status=1,menubar=0,scrollbars=1,resizable=1");
		HelpWindow.focus();
	}


	function mapWin (FILE) {
		mapWindow = window.open(FILE,"mapWindow","width=765,height=550,toolbar=0,location=0,directories=0,status=1,menubar=1,scrollbars=0,resizable=0");
		mapWindow.focus();
	}


// MORTGAGE CALCULATIONS...
// Vars
// Form = MortgageForm
// Call = compute(x) x=0 or x=1 if using downpercent
// price,rate,downamount[downpercent],numyears,loan,numpayments,
// monthlypayment

	function RemoveComma(Text)
{	var pos=Text.indexOf(",");
	while (pos >= 0){
		Text = Text.substring(0, pos) + Text.substring(pos+1, Text.length);
		pos=Text.indexOf(",");
    }
    return CvtNum(Text);
}
function CommaFormat(NumValue)
{   var Result, decimal, pos;
    Result = "";
    NumValue=Math.floor(NumValue + .5);
    NumValue = NumValue.toString()
    while (NumValue.length > 3) {
        Result = "," + NumValue.substring(NumValue.length-3,NumValue.length)+ Result;
        NumValue = NumValue.substring(0,NumValue.length-3)
    }
    Result = NumValue + Result;
    return Result;
}
function CvtNum(Text)
{	if (Text.length == 0) { return 0; }
	else { return parseFloat(Text); }
}
function ValidateNum(Num, defaultvalue)
{	if (Num < 0) { Num=0;}
   if (0 == Num) { Num = defaultvalue; }
	return Num;
}
function compute(IsItPercField)
{  var mortgage = document.MortgageForm;
   var price, down, perc, numyear, rate, loan, ir, numpayments, payment ;
   price = RemoveComma(mortgage.price.value);
   down = RemoveComma(mortgage.downamount.value);
	perc = RemoveComma(mortgage.downpercent.value);
	numyear = CvtNum(mortgage.numyear.value);
	rate = CvtNum(mortgage.rate.value);

	price = ValidateNum(price,0);
   down = ValidateNum(down,0);
   perc = ValidateNum(perc,0);
   rate = ValidateNum(rate,8.5);
   numyear = ValidateNum(numyear,30);

   if ((0 == down) || (IsItPercField == 1)) {
		down = Math.floor(price * perc / 100.0);
   } else {
 		perc = Math.floor((down / price) * 100.0);
	}

	loan = price-down;
	numpayments = numyear * 12;
	ir = rate / 1200.;
	payment = loan*((ir * Math.pow(1+ir, numpayments)) / ((Math.pow(1+ir, numpayments)) - 1));

   mortgage.downpercent.value = perc;
   mortgage.downamount.value = CommaFormat(down);
   mortgage.price.value = CommaFormat(price);
	mortgage.numyear.value = numyear;
	mortgage.rate.value = rate;
	mortgage.loan.value = CommaFormat(loan);
	mortgage.numpayments.value = numpayments;
	mortgage.monthlypayment.value = CommaFormat(payment);
}

// usage : writing out link
// <script>linkMail('hostdomain','username');</script>
// usage : link only
// <a href="javascript:popMail('hostdomain','username')">email us</a>
// usage : showing an email address
// <script>showMail('hostdomain','username');</script>

function popMail(host,user) {
	var acct = user +'@'+ host;
	self.location.href = 'mailto:'+ acct;
}
function linkMail(host,user,cls) {
	document.write('<a href="javascript:popMail(\''+ host +'\',\''+ user +'\');"');
	if (cls) {
		document.write(' class="'+ cls +'"');
	}
	document.write('>');
	showMail(host,user);
	document.write('</a>');
}
function showMail(host,user) {
	var acct = user +'@'+ host;
	document.write(acct);
}

function showFullContent()
{
	document.getElementById('shortContentDiv').style.display = 'none';
	document.getElementById('moreLink').style.display = 'none';
	document.getElementById('fullContentDiv').style.display = 'block';
}

function checkContentHeight()
{
	if(document.getElementById('outerContainer'))
	{
		var innerHeight = document.getElementById('innerContainer').offsetHeight;
		var outerHeight = document.getElementById('outerContainer').offsetHeight;
		//alert('inner: ' + innerHeight + "\n" + 'outer: ' + outerHeight);
		if(innerHeight > outerHeight)
		{
			document.getElementById('contentFullBucketLink').style.display = 'block';
		}
	}
}

function showFullContent()
{

		var innerHeight = document.getElementById('innerContainer').offsetHeight;
		var outerHeight = innerHeight + 15;
		document.getElementById('outerContainer').style.height = outerHeight + 'px';
		document.getElementById('contentFullBucketLink').style.display = 'none';
}

function checkTabsMore()
{
	if(window.BucketTabs != undefined)
	{
		if(BucketTabs['main'])
		{
			if(BucketTabs['main'][0])
			{
				if(document.getElementById('more_preview' + BucketTabs['main'][0]))
				{
					document.getElementById('more_preview' + BucketTabs['main'][0]).style.display = 'inline';
				}
			}
		}
		if(BucketTabs['secondary'])
		{
			if(BucketTabs['secondary'][0])
			{
				if(document.getElementById('more_preview' + BucketTabs['secondary'][0]))
				{
					document.getElementById('more_preview' + BucketTabs['secondary'][0]).style.display = 'inline';
				}
			}
		}
	}
}


function checkEnter(e, formId){ //e is event object
	var characterCode // literal character code will be stored in this variable

	if(e && e.which){ //if which property of event object is supported (NN4)
		e = e
		characterCode = e.which //character code is contained in NN4's which property
	}else{
		e = event
		characterCode = e.keyCode //character code is contained in IE's keyCode property
	}

	if(characterCode == 13){ // (if enter key)
		formId.submit()
		return false
	}else{
		return true
	}

}

// -->


// only used on the home page for main nav rollover
function mainNavShowBucket(layer) {
	showHideLayers('','mNavBucket_'+ layer,'visible');
}
function mainNavHideBucket(layer) {
	showHideLayers('','mNavBucket_'+ layer,'hidden');
}





//*********************************************************************************************//
//	NAV.JS
//*********************************************************************************************//


onSiteGroup = ''
t = ''
pause = 500;

function showSiteGroup(siteGroup) {

	if (t) {
		clearTimeout(t);
		t = '';
	}

	if (siteGroup && siteGroup != '') {

		if (onSiteGroup == siteGroup) return;

		if (document.getElementById(siteGroup +'OnList')) {
	
			if (onSiteGroup != '') hideSiteGroup();

			showHideLayers('',siteGroup +'OnList','visible');
			
			if (document.getElementById(siteGroup +'OnBtn')) {
				showHideLayers('',siteGroup +'OnBtn','visible');
			}
			
			onSiteGroup = siteGroup;

		}

	}

}

function hideSiteGroup() {

	if (onSiteGroup != '') {

		showHideLayers('',onSiteGroup +'OnList','hidden');
		
		if (document.getElementById(onSiteGroup +'OnBtn')) {
				showHideLayers('',onSiteGroup +'OnBtn','hidden');
			}
		
		onSiteGroup = '';

	}

}

function pauseHideSiteGroup () {

	t = setTimeout("hideSiteGroup();",pause);

}


var onTabKey = new Array();
//onTabKey['main'] = 0;
//alert(onTabKey['main']);
var onTabPos = 'main';
function changeTabs (key,pos) {
	resetTabs(pos);
	//alert(onTabKey);

	if (key == onTabKey[pos] && pos == onTabPos) {


	} else if(document.getElementById('bucketTab'+ onTabKey[pos] + pos) && document.getElementById('bucketTab'+ key + pos)) {

		//alert('bucketTab'+ onTabKey[pos] + pos + "\n" + 'tabContent'+ onTabKey[pos] + pos);
		setClass('bucketTab'+ onTabKey[pos] + pos,'bucketTabClosed','tabContent'+ onTabKey[pos] + pos,'tabContentOff');
		//alert('bucketTab'+ key + pos + "\n" + 'tabContent'+ key + pos);
		setClass('bucketTab'+ key + pos,'bucketTabOpen','tabContent'+ key + pos,'tabContentOn');

		onTabKey[pos] = key
		onTabPos = pos;

	}
	resetMore(key,pos);
}

function resetTabs(pos)
{
	if(window.BucketTabs != undefined)
	{
		if(window.BucketTabs[pos] != undefined)
		{
			var numTabs = BucketTabs[pos].length;
			for(x = 0;x < numTabs;x++)
			{
				if(document.getElementById('more_preview' + BucketTabs[pos][x]))
				{
					if(document.getElementById('more_preview' + BucketTabs[pos][x]).innerHTML.indexOf('Less') > -1)
					{
						DisplayPreviewSwitcheroo(BucketTabs[pos][x],pos);
						if(document.getElementById('more_preview' + BucketTabs[pos][x]))
						{
							document.getElementById('more_preview' + BucketTabs[pos][x]).style.display = 'none';
						}
					}
				}
				if(document.getElementById('more_preview' + BucketTabs[pos][x]))
				{
					//alert(document.getElementById('more_preview' + BucketTabs[x]).style.display);
					document.getElementById('more_preview' + BucketTabs[pos][x]).style.display = 'none';
				}
			}
		}
	}
}

function resetMore(key,pos)
{
	if(window.BucketTabs != undefined)
	{
		if(window.BucketTabs[pos] != undefined)
		{
			if(window.BucketTabs[pos][key] != undefined)
			{
				if(document.getElementById('more_preview' + BucketTabs[pos][key]))
				{
					document.getElementById('more_preview' + BucketTabs[pos][key]).style.display = 'inline';
				}
			}
		}
	}
}

var shortTimeoutLength = 1500; // 1.5 seconds
var shortTimeout = null;

var endShortTimeoutEval = null;
var lastHttpRequestObj = null;

function hideCover(id)
{
	resizeCover('cover');
	//showHideLayers('','cover','hidden');
	setClass('cover','coverOff');
}

function showCover(id)
{
	resizeCover('cover');
	repositionDiv("utility",100);
	setClass('cover','coverOn');
}

var tmpintoDiv;

function postProcess (reqTmp, intoDiv) {

	if (shortTimeout) {
		lastHttpRequestObj = reqTmp;
		tmpintoDiv = intoDiv;
		endShortTimeoutEval = 'postProcess(lastHttpRequestObj, tmpintoDiv)';
		
		//alert('postProcess::continue::'+ req);
		
	} else {
		getElmById(intoDiv).innerHTML = reqTmp.responseText;
		hideProcessing();
		showHideLayers('','utility','visible');
		
		lastHttpRequestObj = null;
		
		//alert('postProcess::execute::'+ req);
	}

}

function endShortTimeout () {
	
	shortTimeout = null;
	if (endShortTimeoutEval) {
		//alert('endshorttimeeval::'+ endShortTimeoutEval);
		
		eval(endShortTimeoutEval);
		endShortTimeoutEval = null;
	}

}

function showProcessing(strMsg)
{	
	if (!strMsg) {
		strMsg = 'Loading...';
	}
	
	//clear existing timeout
	//if (shortTimeout) {
	//	shortTimeout = null;
	//}

	resizeCover('processing');
	repositionDiv('processingInfo',125);
	setClass('processing','processOn');
	document.getElementById('processingInfo').innerHTML = "<center><div id='processingWait'><div id='processingWaitInfo'>"+ strMsg +"<br><img src='/images/gen/loading_40x40.gif' width='40' height='40' vspace='5'></div></div></center>";
	
	showHideLayers('','processingInfo','visible');
	shortTimeout = setTimeout('endShortTimeout()',shortTimeoutLength)
	//showHideLayers('','cover','visible');
}

function hideProcessing()
{
	resizeCover('processing');
	//showHideLayers('','cover','hidden');
	document.getElementById('processingInfo').innerHTML = "";
	showHideLayers('','processingInfo','hidden');
	setClass('processing','coverOff');
}

function repositionDiv(objId,plusDistance)
{
	page_pos = getPagePosition();
	document.getElementById(objId).style.top = (page_pos[1] + plusDistance) +'px';
}

function resizeCover (objId) {

	page_dims = getPageSizeWithScroll();
	document.getElementById(objId).style.height = page_dims[1]+'px';

}

function getPageSizeWithScroll()
{
	if (window.innerHeight && window.scrollMaxY) {// Firefox
		yWithScroll = window.innerHeight + window.scrollMaxY;
		xWithScroll = window.innerWidth + window.scrollMaxX;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		yWithScroll = document.body.scrollHeight;
		xWithScroll = document.body.scrollWidth;
	} else { // works in Explorer 6 Strict, Mozilla (not FF) and Safari
		yWithScroll = document.body.offsetHeight;
		xWithScroll = document.body.offsetWidth;
  	}
	arrayPageSizeWithScroll = new Array(xWithScroll,yWithScroll);
	return arrayPageSizeWithScroll;
}

function getPagePosition ()
{
  var scrOfX = 0, scrOfY = 0;
	if( typeof( window.pageYOffset ) == 'number' ) {
		//Netscape compliant
		scrOfY = window.pageYOffset;
		scrOfX = window.pageXOffset;
	} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		//DOM compliant
		scrOfY = document.body.scrollTop;
		scrOfX = document.body.scrollLeft;
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		//IE6 standards compliant mode
		scrOfY = document.documentElement.scrollTop;
		scrOfX = document.documentElement.scrollLeft;
	}
	return [ scrOfX, scrOfY ];
}


function validateEmailField(str) {
	if (str == '' || str.indexOf('@',1) == -1) {
		return false;
	} else {
		return true;
	}
}


function showLayerBlock(id) {
	//if (document.getElementById(id)) {
		document.getElementById(id).style.display = 'block';
		document.getElementById(id).style.visibility = 'visible';
	//}
}

function hideLayerBlock(id) {
	//if (document.getElementById(id)) {
		document.getElementById(id).style.visibility = 'hidden';
		document.getElementById(id).style.display = 'none';
	//}
}

function getUtilityFrame () {

	var _utilityFrame = "<div align=center><div id='utilityFrame' style='position:relative'><div style='position:absolute;top:0px;left:0px;'><div class='utilityTop'><div class='utilityBottom'><div class='utilityContent'><div class='utilityClose'><a href='javascript:closeWin();'><img src='/images/gen/popOver_close.gif' border=0></a></div><div id='utilityWorkspace'></div></div><!-- utilityContent --></div><!-- utilityBottom --></div><!-- utilityTop --></div> <!-- close up position --></div> <!-- utitlityFrame --></div><!-- center -->";
	return _utilityFrame;

}