// JavaScript Document
// JavaScript Document
// -----------------------------------------------------------------------------
// Globals
// Major version of Flash required
var requiredMajorVersion = 8;
// Minor version of Flash required
var requiredMinorVersion = 0;
// Revision of Flash required
var requiredRevision = 0;
// the version of javascript supported
var jsVersion = 1.0;
// -----------------------------------------------------------------------------





// JavaScript Document
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;
}

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 MM_findObj(n, d) { //v4.01
  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);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

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];}
}


//popup
function popUp(strURL,strType,strHeight,strWidth) {
var strOptions="";
if (strType=="console") strOptions="resizable,height="+strHeight+",width="+strWidth;
if (strType=="fixed") strOptions="status,height="+strHeight+",width="+strWidth;
if (strType=="elastic") strOptions="toolbar,menubar,scrollbars,resizable,location,height="+strHeight+",width="+strWidth;
window.open(strURL, 'newWin', strOptions);
}


// resize window
top.window.moveTo (0,0);
var w = screen.availWidth;
var h = screen.availHeight;

if (document.all) {
top.window.resizeTo(w,h);
}
else if (document.layers||document.getElementById) {
if (top.window.outerHeight < h || top.window.outerWidth <w ){
top.window.outerHeight = h;
top.window.outerWidth = w;
}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}


// swap html
function changeText1(newText){
document.getElementById("choice").innerHTML="<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td><a href=javascript:changeText5('')><img src='images/previous.gif' border='0'></a></td><td width='15'>&nbsp;</td><td class='bodyTxt' height='200'><img src='images/podcasts-title.gif' /><p>Podcasting is one of the latest technology trends in real estate.  Podcasting is delivering audio content to iPods and other portable media players on demand, so that it can be listened to at the user's convenience. The main benefit of podcasting is that listeners can sync content to their media player and take it with them to listen whenever they want to. Because podcasts are typically saved in MP3 format, they can also be listened to on nearly any computer.  A podcast brings your property to life with audio explaining details of your home that just can’t be expressed on a flier or brochure.</td><td width='15'>&nbsp;</td><td><a href=javascript:changeText2('')><img src='images/next.gif' border='0'></a></td></tr></table>";
}

// swap html
function changeText2(newText){
document.getElementById("choice").innerHTML="<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td><a href=javascript:changeText1('')><img src='images/previous.gif' border='0'></a></td><td width='15'>&nbsp;</td><td class='bodyTxt' height='200'><img src='images/custom-title.gif' /><p>Creating a customized website for each property is one of the many tools used in Brandi’s powerful marketing system.  By showcasing the homes unique appeal in an impressive and compelling way, the web presence created for your home is a must have in today’s market!</td><td width='15'>&nbsp;</td><td><a href=javascript:changeText3('')><img src='images/next.gif' border='0'></a></td></tr></table>";
}

// swap html
function changeText3(newText){
document.getElementById("choice").innerHTML="<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td><a href=javascript:changeText2('')><img src='images/previous.gif' border='0'></a></td><td width='15'>&nbsp;</td><td class='bodyTxt' height='200'><img src='images/cds-title.gif' /><p>Customized CD’s are created for your home.  This is a Virtual flier buyers can take with them.<p>This is highly effective in making your home stand out from the competition when paired with your customized home brochure.  These CD’s are also sent out to target neighborhoods for additional exposure of your property.</td><td width='15'>&nbsp;</td><td><a href=javascript:changeText4('')><img src='images/next.gif' border='0'></a></td></tr></table>";
}

// swap html
function changeText4(newText){
document.getElementById("choice").innerHTML="<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td><a href=javascript:changeText3('')><img src='images/previous.gif' border='0'></a></td><td width='15'>&nbsp;</td><td class='bodyTxt' height='200'><img src='images/lead-title.gif' /><p>Lead Generation from Trulia.com: Business Week named this innovative real estate search site Best of the Web in 2006.  Visitors who want more information on your home will be instantly linked to Brandi’s website for a faster response.  This is just one example of the many lead generation techniques used by Brandi. </td><td width='15'>&nbsp;</td><td><a href=javascript:changeText5('')><img src='images/next.gif' border='0'></a></td></tr></table>";
}

// swap html
function changeText5(newText){
document.getElementById("choice").innerHTML="<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td><a href=javascript:changeText4('')><img src='images/previous.gif' border='0'></a></td><td width='15'>&nbsp;</td><td class='bodyTxt' height='200'><img src='images/yahoo-title.gif' /><p>Exclusive Yahoo! Partnership Online Seller Advantage: Only Prudential agents can give their listings featured property status on Yahoo.com, where over four million unique visitors look for real estate every month.  Yahoo! Online Seller Advantage e-mail updates will keep you informed of online activity on your property and changes in the status of homes for sale in your neighborhood.</td><td width='15'>&nbsp;</td><td><a href=javascript:changeText6('')><img src='images/next.gif' border='0'></a></td></tr></table>";
}

// swap html
function changeText6(newText){
document.getElementById("choice").innerHTML="<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td><a href=javascript:changeText5('')><img src='images/previous.gif' border='0'></a></td><td width='15'>&nbsp;</td><td class='bodyTxt' height='200'><img src='images/emarketing-title.gif' /><p>Email blasts are another avenue of creating visibility for your property quickly and frequently. High impact marketing materials are sent to a database of thousands of agents and buyers.</td><td width='15'>&nbsp;</td><td><a href=javascript:changeText7('')><img src='images/next.gif' border='0'></a></td></tr></table>";
}

// swap html
function changeText7(newText){
document.getElementById("choice").innerHTML="<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td><a href=javascript:changeText6('')><img src='images/previous.gif' border='0'></a></td><td width='15'>&nbsp;</td><td class='bodyTxt' height='200'><img src='images/trans-title.gif' /><p>The powerful TransactionPoint® system is a Virtual Office management system.  All parties involved in the transaction are consistently kept in the loop by having all files accessible 24 hours a day. This system also cuts down on time wasted waiting on mail or couriered packages.  By using this virtual tool, clients can also perform many parts of the transaction in their home or office without having to travel to sign documents.  At closing, clients will receive a CD of all documents pertaining to their escrow for their records.</td><td width='15'>&nbsp;</td><td><a href=javascript:changeText8('')><img src='images/next.gif' border='0'></a></td></tr></table>";
}

// swap html
function changeText8(newText){
document.getElementById("choice").innerHTML="<table width='100%' border='0' cellspacing='0' cellpadding='0'><tr><td><a href=javascript:changeText7('')><img src='images/previous.gif' border='0'></a></td><td width='15'>&nbsp;</td><td class='bodyTxt' height='200'><img src='images/pay-title.gif' /><p>Brandi has built an internet marketing strategy that delivers. By advertising on major search engines, Brandi puts herself in front of home buyers and sellers who are actively searching for properties.  Driving traffic to her website is a key component in generating interest in her listings.</td><td width='15'>&nbsp;</td><td><a href=javascript:changeText1('')><img src='images/next.gif' border='0'></a></td></tr></table>";
}

// Fix Google Toolbar Autofill


  if(window.attachEvent)
    window.attachEvent("onload",setListeners);

  function setListeners(){
    inputList = document.getElementsByTagName("INPUT");
    for(i=0;i<inputList.length;i++){
      inputList[i].attachEvent("onpropertychange",restoreStyles);
      inputList[i].style.backgroundColor = "";
    }
    selectList = document.getElementsByTagName("SELECT");
    for(i=0;i<selectList.length;i++){
      selectList[i].attachEvent("onpropertychange",restoreStyles);
      selectList[i].style.backgroundColor = "";
    }
  }

  function restoreStyles(){
    if(event.srcElement.style.backgroundColor != "")
      event.srcElement.style.backgroundColor = "";
  }


///
function validZip(inZip) {
		for (i=0; i<inZip.length; i++) {
			if (inZip.charAt(i) < "0") {
				return false
			}
			if (inZip.charAt(i) > "9") {
				return false
			}
			if (inZip.length < 5) {
				return false
			}
		}
		return true
	}
	
	
function validTelAreaCode(inTelAreaCode) {
		for (i=0; i<inTelAreaCode.length; i++) {
			if (inTelAreaCode.charAt(i) < "0") {
				return false
			}
			if (inTelAreaCode.charAt(i) > "9") {
				return false
			}
			if (inTelAreaCode.length < 3) {
				return false
			}
		}
		return true
	}
	


function validEmail(Email) {
		invalidChars = " /:,;"
		
		for (i=0; i<invalidChars.length; i++) {
			badChar = invalidChars.charAt(i)
			if (Email.indexOf(badChar,0) > -1) {
				return false
			}
		}
		atPos = Email.indexOf("@",1)
		if (atPos == -1) {
			return false
		}
		if (Email.indexOf("@",atPos+1) != -1) {
			return false
		}
		periodPos = Email.indexOf(".",atPos)
		if (periodPos == -1) {
			return false
		}
		if (periodPos+3 > Email.length) {
			return false
		}
		return true
	}
	
function numberCode(inNumber) {
	if (inNumber == "") {
		return false
	}
	for (i=0; i<inNumber.length; i++) {
		if (inNumber.charAt(i) < "0") {
			return false
		}
		if (inNumber.charAt(i) > "9") {
			return false
		}
	}
	return true
}
	
	

	
function submitIt(passForm) {

	if (passForm.firstName && passForm.firstName.value == "") {
		alert("Please enter your First Name")
		passForm.firstName.focus()
		return false
	}

	if (passForm.lastName && passForm.lastName.value == "") {
		alert("Please enter your Last Name")
		passForm.lastName.focus()
		return false
	}
	
	if (passForm.email.value == "") {
		alert("Please enter your Email Address")
		passForm.email.focus()
		return false
	}

	if (passForm.email.value != "") {
		if (!validEmail(passForm.email.value)) {
			alert("Invalid Email Address - Please enter a valid Email Address")
			passForm.email.focus()
			passForm.email.select()
			return false
		}	
	}

	if (passForm.phoneCode.value != "") {
		if (!validTelAreaCode(passForm.phoneCode.value)) {
			alert("Please enter a valid Telephone Area Code")
			passForm.phoneCode.focus()
			passForm.phoneCode.select()
			return false
		}
	}
	
	if (passForm.phoneNum.value != "") {	
		if (!validTelNumber(passForm.phoneNum.value)) {
			alert("Please enter a valid Telephone Number")
			passForm.phoneNum.focus()
			passForm.phoneNum.select()
			return false
		}
	}
	if (passForm.cellCode.value != "") {
		if (!validTelAreaCode(passForm.cellCode.value)) {
			alert("Please enter a valid Cell Phone Area Code")
			passForm.cellCode.focus()
			passForm.cellCode.select()
			return false
		}
	}
	
	if (passForm.cellNum.value != "") {
		if (!validTelNumber(passForm.cellNum.value)) {
			alert("Please enter a valid Cell Number")
			passForm.cellNum.focus()
			passForm.cellNum.select()
			return false
		}
	}
	
	if (passForm.faxCode.value != "") {
		if (!validTelAreaCode(passForm.faxCode.value)) {
			alert("Please enter a valid Fax Area Code")
			passForm.faxCode.focus()
			passForm.faxCode.select()
			return false
		}
	}
	
	if (passForm.faxNum.value != "") {
		if (!validTelNumber(passForm.faxNum.value)) {
			alert("Please enter a valid Fax Number")
			passForm.faxNum.focus()
			passForm.faxNum.select()
			return false
		}
	}
	
	if (passForm.zip.value != "") {
		if (!validZip(passForm.zip.value)) {
			alert("Please enter a valid Zip Code")
			passForm.zip.focus()
			passForm.zip.select()
			return false
		}
	}
		
	
	
	return true
}

/*
 * This function determines whether a field exists and that it is required before testing for it
 */
function submitItNew(passForm) {
  
  var fieldCount = passForm.elements.length;
	var i;
	
	for (i = 0; i < fieldCount; i++) {
		if (hasClassName(passForm.elements[i], 'required') && passForm.elements[i].value == '') {
			//alert(passForm.elements[i].name +' - '+ passForm.elements[i].value);
			alert("Please enter your "+ passForm.elements[i].title);
			passForm.elements[i].focus();
			return false;
		} 
		
		if (hasClassName(passForm.elements[i], 'email') && passForm.elements[i].value != '' && !validEmail(passForm.elements[i].value)) {
		  alert("Invalid Email Address - Please enter a valid Email Address");
			passForm.elements[i].focus();
			passForm.elements[i].select();
			return false;
		} else if (hasClassName(passForm.elements[i], 'phoneCode') && passForm.elements[i].value != '' && !validTelAreaCode(passForm.elements[i].value)) {
			alert("Please enter a valid Telephone Area Code")
			passForm.elements[i].focus();
			passForm.elements[i].select();
			return false;
		} else if (hasClassName(passForm.elements[i], 'phoneNum') && passForm.elements[i].value != '' && !numberCode(passForm.elements[i].value)) {
			alert("Please enter a valid Telephone Number")
			passForm.elements[i].focus();
			passForm.elements[i].select();
			return false;
		} else if (hasClassName(passForm.elements[i], 'cellCode') && passForm.elements[i].value != '' && !validTelAreaCode(passForm.elements[i].value)) {
			alert("Please enter a valid Cell Phone Area Code")
			passForm.elements[i].focus();
			passForm.elements[i].select();
			return false;
		} else if (hasClassName(passForm.elements[i], 'cellNum') && passForm.elements[i].value != '' && !numberCode(passForm.elements[i].value)) {
			alert("Please enter a valid Cell Phone Number")
			passForm.elements[i].focus();
			passForm.elements[i].select();
			return false;
		} else if (hasClassName(passForm.elements[i], 'faxCode') && passForm.elements[i].value != '' && !validTelAreaCode(passForm.elements[i].value)) {
			alert("Please enter a valid Fax Area Code")
			passForm.elements[i].focus();
			passForm.elements[i].select();
			return false;
		} else if (hasClassName(passForm.elements[i], 'faxNum') && passForm.elements[i].value != '' && !numberCode(passForm.elements[i].value)) {
			alert("Please enter a valid Fax Number")
			passForm.elements[i].focus();
			passForm.elements[i].select();
			return false;
		} else if (hasClassName(passForm.elements[i], 'zipCode') && passForm.elements[i].value != '' && !validZip(passForm.elements[i].value)) {
			alert("Please enter a valid Zip Code")
			passForm.elements[i].focus();
			passForm.elements[i].select();
			return false;
		}
		
	}
	
	return true
}

function hasClassName(element,className) {
    if (element.className.indexOf(className) > -1) {
        return true;
    }
    return false;
}







//-->
// begin absolutely positioned scrollable area object scripts 
// Extension developed by David G. Miles 
// Original Scrollable Area code developed by Thomas Brattli 
function verifyCompatibleBrowser(){ 
    this.ver=navigator.appVersion 
    this.dom=document.getElementById?1:0 
    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0; 
    this.ie4=(document.all && !this.dom)?1:0; 
    this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
 
    this.ns4=(document.layers && !this.dom)?1:0; 
    this.bw=(this.ie5 || this.ie4 || this.ns4 || this.ns5) 
    return this 
} 
bw=new verifyCompatibleBrowser() 
 
 
var speed=50 
 
var loop, timer 
 
function ConstructObject(obj,nest){ 
    nest=(!nest) ? '':'document.'+nest+'.' 
    this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0; 
    this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0; 
    this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight 
    this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight 
    this.up=MoveAreaUp;this.down=MoveAreaDown; 
    this.MoveArea=MoveArea; this.x; this.y; 
    this.obj = obj + "Object" 
    eval(this.obj + "=this") 
    return this 
} 
function MoveArea(x,y){ 
    this.x=x;this.y=y 
    this.css.left=this.x 
    this.css.top=this.y 
} 
 
function MoveAreaDown(move){ 
	if(this.y>-this.scrollHeight+objContainer.clipHeight){ 
    this.MoveArea(0,this.y-move) 
    if(loop) setTimeout(this.obj+".down("+move+")",speed) 
	} 
} 
function MoveAreaUp(move){ 
	if(this.y<0){ 
    this.MoveArea(0,this.y-move) 
    if(loop) setTimeout(this.obj+".up("+move+")",speed) 
	} 
} 
 
function PerformScroll(speed){ 
	if(initialised){ 
		loop=true; 
		if(speed>0) objScroller.down(speed) 
		else objScroller.up(speed) 
	} 
} 
 
function CeaseScroll(){ 
    loop=false 
    if(timer) clearTimeout(timer) 
} 
var initialised; 
function InitialiseScrollableArea(){ 
    objContainer=new ConstructObject('divContainer') 
    objScroller=new ConstructObject('divContent','divContainer') 
    objScroller.MoveArea(0,0) 
    objContainer.css.visibility='visible' 
    initialised=true; 
}
function InitialiseScrollableAreaSm(){ 
    objContainer=new ConstructObject('divContainerSm') 
    objScroller=new ConstructObject('divContentSm','divContainerSm') 
    objScroller.MoveArea(0,0) 
    objContainer.css.visibility='visible' 
    initialised=true; 
} 

///////////////////
function InitialiseScrollableArea2(){ 
    objContainer=new ConstructObject('divContainera') 
    objScroller=new ConstructObject('divContenta','divContainera') 
    objScroller.MoveArea(0,0) 
    objContainer.css.visibility='visible' 
    initialised=true; 
}
function InitialiseScrollableAreaSm2(){ 
    objContainer=new ConstructObject('divContainerSma') 
    objScroller=new ConstructObject('divContentSma','divContainerSma') 
    objScroller.MoveArea(0,0) 
    objContainer.css.visibility='visible' 
    initialised=true; 
} 
// end absolutely positioned scrollable area object scripts 
