function isEmailValid(email) {
	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email)){
		return true;
	}
	return false;
}
function isEmailValid2(email) {	
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,3}(?:\.[a-z]{2})?)$/i
	if (filter.test(email))
	return true;
	else{
	return false;
	}
}
function isPasswordValid(pass) {
	if (pass.length > 5) {
		if (/(^[a-zA-Z0-9]\w{5,19}$)/.test(pass)) {
			return true;
		} else {
			return false;
		}
	}else{
		return false;
	}
}

function showWaiting1() {
	var div = $('waiting1');
    var wDim = getBrowserWindowSize();
    var dDim = Element.getDimensions(div);
	div.style.top = (wDim.scroll + ((wDim.height - dDim.height) / 2)) + 'px';
    div.style.left = ((wDim.width - dDim.width) / 2) + 'px';
	Element.show(div);
}

function showWaiting() {
	var div = $('waiting');
    var wDim = getBrowserWindowSize();
    var dDim = Element.getDimensions(div);
	div.style.top = (wDim.scroll + ((wDim.height - dDim.height) / 2)) + 'px';
    div.style.left = ((wDim.width - dDim.width) / 2) + 'px';
	Element.show(div);
}
function hideWaiting() {
	Element.hide('waiting');
}
function hideWaiting1() {
	Element.hide('waiting1');
}
function sendTo(actionName) {
	window.location = "/"+actionName+"";
}

function sendToHTTP(actionName) {
	window.parent.location = "http://"+ window.location.host +"/"+actionName+"";
}

function sendToHTTPS(actionName) {
	window.parent.location = "https://"+ window.location.host +"/"+actionName+"";
}

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

function strTrimmer(inputString){
	strToCheck =  new String();
	strToCheck = inputString;
	return strToCheck.replace(/^\s*|\s*$/g,"");
}
function strCommaTrimmer(inputString){
	strToCheck =  new String();
	strToCheck = inputString;
	return strToCheck.substring(0, inputString.length-2);
}
function validateUSZip( strValue ) 
{
	return /(^\d{5}$)/.test(strValue);
}

function validateCardNo( strValue ) 
{
	if (strValue.length > 15) {
		if (validateNumbers(strValue)) {
			return true;
		} else {
			return false;
		}
	}else{
		return false;
	}    
}
function validateAmexCardNo( strValue ) 
{
	if (strValue.length == 15) {
		if (validateNumbers(strValue)) {
			return true;
		} else {
			return false;
		}
	}else{
		return false;
	}    
}
function validateStateAbbr(stateAbbr) {
	return /(^[A-Za-z]{2}$)/.test(stateAbbr);
}
function  validateNumeric( strValue ) 
{   
    var objRegExp  =  /(^-?\d\d*\.\d*$)|(^-?\d\d*$)|(^-?\.\d\d*$)/;
    return objRegExp.test(strValue);
}
function  validateNumbers1( strValue ) 
{   
	var objRegExp  =  /(^[-]?[0-9]+[\.]?[0-9]+$)/;
    return objRegExp.test(strValue);
}

function  validatePrice( strValue ) {  
	if(strValue.length>3){
		var objRegExp  =  /(^[$]?[0-9]+[,]?[0-9]+[,]?[0-9]+[\.]?[0-9]+$)/;
		return objRegExp.test(strValue);
	}else if (validateNumbers(strValue)) {
		return true;
	}
	return false;
}

function  validateNumbers( strValue ) 
{   
    var objRegExp  =  /(^\d+$)/;
    return objRegExp.test(strValue);
}

function validatePercentage(strValue)
{
	var objRegExp  =  /^(\d)*(\.\d{1,2})?$/;
    return objRegExp.test(strValue);
}

function isCityStateZipValid(cityStateZip) {
	if(validateUSZip(cityStateZip)) {
		return true;
	} else if (isCityStateValid(cityStateZip)) {
		return true;
	}
	return false;
}
function isCityStateValid(cityState) {
	if (/^[\s]*\w+([-\.\s\w])*,[\s]*\w+([-\.\s\w])*[\s]*$/.test(cityState)) {
		return true;
	}else {
		return false;
  }
}

function validPhone(content){
	if(/^(?:(?:\+?1\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:#|x\.?|ext\.?|extension)\s*(\d+))?$/.test(content)){
		return true;
	}
	return false;
}

function showHideSelectBox(isDisplay){
	  var Elements = document.getElementsByTagName('SELECT');
	  var ElementIDs = "";
	  for(var i=0;i<Elements.length;i++){
		  if(isDisplay == false){
			  $(Elements[i].id).style.visibility = "hidden";
		  }else if(isDisplay == true){
			  $(Elements[i].id).style.visibility = "visible";
		  }
	  }
}

function showHideSelectBoxForMO(isDisplay){
	  var Elements = document.getElementsByTagName('SELECT');
	  var ElementIDs = "";
	  for(var i=0;i<Elements.length;i++){
		  if(isDisplay == false){
			  if(Elements[i].id != "paymentInfoDto.expiryYear" && Elements[i].id != "paymentInfoDto.expiryMonth"){
				  $(Elements[i].id).style.visibility = "hidden";
			  }
		  }else if(isDisplay == true){
			  $(Elements[i].id).style.visibility = "visible";
		  }
	  }
}
function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}

function mapAddress(address, mapDiv, zoomOut, scaleMap) {
	
	var map = null;
	var geocoder = null;
	var ca = address.split(',');
	var finalAddress = "";
	for(var i=0;i < ca.length;i++) {
	var add = trim(ca[i]);
	 if(finalAddress == "")
		finalAddress = finalAddress + add;
		else
		finalAddress = finalAddress + ", " + add;
	}
	address = finalAddress;
	
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById(mapDiv));
		geocoder = new GClientGeocoder();
		geocoder.getLatLng(address, function(point) {
			if (!point) {
				map.setCenter(new GLatLng(40.85, -96.75), 1);
			} else {
				map.setCenter(point, 11);
				if (scaleMap != null) {
					if (!(strTrimmer(scaleMap) == "")) {
						var pos = new GControlPosition(G_ANCHOR_BOTTOM_LEFT,
								new GSize(100, 10));
						map.addControl(new GScaleControl(), pos);
					}
				}
				var addrMarker = new GMarker(point, {
					title :address
				});
				map.addOverlay(addrMarker);
			}
			map.addControl(new GSmallMapControl());
			map.setMapType(G_NORMAL_MAP);
		});
	}
}
function agentSearchByName(role){
	var agentFirstName =$("agentSearchDto.firstName").value;
	var agentLastName =$("agentSearchDto.lastName").value;	
	if(role == "1"){
		var thisForm = $('buyerRequirementSubmit');
		thisForm.action = "/agentSearchByName?firstName=" +escape(agentFirstName) + "&lastName=" + escape(agentLastName)+ "&role="+escape(role);
		thisForm.submit();
	}else if(role == "2"){
		var thisForm = $('sellerPropertySubmit');
		thisForm.action = "/agentSearchByName?firstName=" +escape(agentFirstName) + "&lastName=" + escape(agentLastName)+ "&role="+escape(role);
		thisForm.submit();
	}else{
		window.location = "/agentSearchByName?firstName=" +escape(agentFirstName) + "&lastName=" + escape(agentLastName);	
	}		
}

function goToUserSignUp(userid){
	
	var ajaxRequest = new Ajax.Request($('refRegister').action,
			 {
				method: 'post',
				parameters: 'id='+userid,
				onSuccess:function(transport){

					if(transport.responseText!="null") {
						openModalWindow('accountTypeModalWindow');
					} 
					hideWaiting();
				},
				onFailure:function(transport){
					hideWaiting();
					openModalWindow('errorModalWindow');
				},
				onException:function(transport){
					hideWaiting();
					openModalWindow('errorModalWindow');
				}
			});
	
}
function validateUSZipForSearch( strValue ) 
{
	if (isCityStateZipValid(strValue)) {
		return strValue;
	} else {
		return "invalid";
	}
}
function changeSortImg(imgId){
	var img = $(imgId).src;
	if(img.indexOf("sort_icon.jpg") != -1){
		$(imgId).src = "content/Images/sort_icon_rev.jpg";
	}else {
		$(imgId).src = "content/Images/sort_icon.jpg";
	}
}

function displaySections(divId){
	if($(divId).style.display == "block"){
		$(divId).style.display = "none";
	}else{
		$(divId).style.display = "block";
	}
}

function checkDuplicateEmail(from){
    
	var dupEmailMsg = "Email already exists. Please sign-in or register with a different email address. Forgot your password?  <a href='javascript:void(0);'style='color:#323232' onClick='openFPWindow();'>Click here</a> and we will email it to you.";
	var inactiveEmailMsg = "This email already exists for a deactivated account. To re-activate this account, please contact customer service.";
	if(strTrimmer($("userDto.loginId").value)!= "" && isEmailValid($("userDto.loginId").value)) {
		var ajaxRequest = new Ajax.Request('chkDuplicateEmail.action',
				{
					method: 'post',
					parameters: 'userDto.loginId='+$('userDto.loginId').value,
					onSuccess:function(transport){
						if(transport.responseText=="duplicate") {
							
							$('actionErrorMsg').innerHTML = "";
							$('actionErrorMsg').style.display = "none";
							$('contactErrorMsg').innerHTML = dupEmailMsg;
							$('contactErrorDiv').style.display = "block";
							$('contact_div').style.display = "block";
						} else if(transport.responseText=="inactive"){
							$('contactErrorMsg').innerHTML = inactiveEmailMsg;
							$('actionErrorMsg').innerHTML = "";
							$('actionErrorMsg').style.display = "none";
							$('contactErrorDiv').style.display = "block";
							$('contact_div').style.display = "block";
						} else if(from != "buyer"){
							$('contactErrorMsg').innerHTML = "";
							$('contactErrorDiv').style.display = "none";
						} 
						hideWaiting();
					},
					onFailure:function(transport){
						// do nothing
					},
					onException:function(transport){
						// do nothing
					}
				});
	}else{
		$('contactErrorMsg').innerHTML = "";
		$('contactErrorDiv').style.display = "none";
	}
}

function checkDuplicateEmail(){
	
	var dupEmailMsg = "Email already exists. Please sign-in or register with a different email address. Forgot your password?  <a href='javascript:void(0);'style='color:#323232' onClick='openFPWindow();'>Click here</a> and we will email it to you.";
	var inactiveEmailMsg = "This email already exists for a deactivated account. To re-activate this account, please contact customer service.";
	if(strTrimmer($("userDto.loginId").value)!= "" && isEmailValid($("userDto.loginId").value)) {
		var ajaxRequest = new Ajax.Request('chkDuplicateEmail.action',
				{
					method: 'post',
					parameters: 'userDto.loginId='+$('userDto.loginId').value,
					onSuccess:function(transport){
						if(transport.responseText=="duplicate") {
							if($('role')!=null &&( $('role').value=='3'||$('role').value=='4')){
								dupEmailMsg = "Email already exists. Please sign-in or register with a different email address.";
							}
							
							$('actionErrorMsg').innerHTML = "";
							$('actionErrorMsg').style.display = "none";
							$('contactErrorMsg').innerHTML = dupEmailMsg;
							$('contactErrorDiv').style.display = "block";
							$('contact_div').style.display = "block";
							return false;
						} else if(transport.responseText=="inactive"){
							$('contactErrorMsg').innerHTML = inactiveEmailMsg;
							$('actionErrorMsg').innerHTML = "";
							$('actionErrorMsg').style.display = "none";
							$('contactErrorDiv').style.display = "block";
							$('contact_div').style.display = "block";
							return false;
						} else{
							$('actionErrorMsg').innerHTML = "";
							$('actionErrorMsg').style.display = "none";
							$('contactErrorMsg').innerHTML = "";
							$('contactErrorDiv').style.display = "none";
							$('contact_div').style.display = "block";
							return true;	
							
						}
						hideWaiting();
					},
					onFailure:function(transport){
						// do nothing
					},
					onException:function(transport){
						// do nothing
					}
				});
	}else{
		//$('contactErrorMsg').innerHTML = "";
		//$('contactErrorDiv').style.display = "none";
       return true;
	
	}
}

function chkInviteDuplicateEmail(thisIndex){
	var dupEmailMsg = "This email address has already been registered by a user on NationalBLS";
	if(strTrimmer($('refDto['+thisIndex+'].email').value) != "" && isEmailValid($('refDto['+thisIndex+'].email').value)) {
		var ajaxRequest = new Ajax.Request('chkDuplicateEmail.action',
				{
					method: 'post',
					parameters: 'userDto.loginId='+ $('refDto['+thisIndex+'].email').value,
					onSuccess:function(transport){
						if(transport.responseText=="duplicate" || transport.responseText=="inactive") {
							$('importErrorDiv').innerHTML = dupEmailMsg;
							$('refDto['+thisIndex+'].checked').checked = false;
							$('refDto['+thisIndex+'].checked').disabled = true;
							$('refDto['+thisIndex+'].email').disabled = true;
							$('refDto['+thisIndex+'].firstName').disabled = true;							
							$('refDto['+thisIndex+'].lastName').disabled = true;
							if($('refDto['+thisIndex+'].broker') != null)
								$('refDto['+thisIndex+'].broker').disabled = true;
							checkForReferral();
						} else {
							$('importErrorDiv').innerHTML = "";
						} 
						hideWaiting();
					},
					onFailure:function(transport){
						// do nothing
					},
					onException:function(transport){
						// do nothing
					}
				});
	}else{
		$('importErrorDiv').innerHTML = "";
	}
}

function chkUserEmail()
{
	if(!(brInit.role == 3 && $('bRDto.isAgentLinked').value == 0 )){
	var errEmailMsg = "Your Email ID is not allowed for authentication.";
		if(!(document.getElementsByName('bADto.authType')[0].checked || document.getElementsByName('bADto.authType')[2].checked))
		{
			if(strTrimmer($("userDto.loginId").value)!= "" && isEmailValid($("userDto.loginId").value)) {
				if(strTrimmer($("bADto.authEmail").value)!= "" && isEmailValid($("bADto.authEmail").value)){
					if(strTrimmer($("userDto.loginId").value) == strTrimmer($("bADto.authEmail").value))
					{
						$('financeErrorMsg').innerHTML = errEmailMsg;
						$('financeErrorDiv').style.display = "block";
						return false;
					}
					else
					{
						$('financeErrorMsg').innerHTML = "";
						$('financeErrorDiv').style.display = "none";
						return true;
					}
				}
			}
		}
	}
	return true;
}

/*******************************************************************/
/***                                                             ***/
/***   Tokenizer.js - JavaScript String Tokenizer Function       ***/
/***                                                             ***/
/***   Version   : 0.2                                           ***/
/***   Date      : 01.05.2005                                    ***/
/***   Copyright : 2005 Adrian Zentner                           ***/
/***   Website   : http://www.adrian.zentner.name/               ***/
/***                                                             ***/
/***   This library is free software. It can be freely used as   ***/
/***   long as this this copyright notice is not removed.        ***/
/***                                                             ***/
/*******************************************************************/

String.prototype.tokenize = tokenize;

function tokenize()
  {
     var input             = "";
     var separator         = " ";
     var trim              = "";
     var ignoreEmptyTokens = true;

     try {
       String(this.toLowerCase());
     }
     catch(e) {
       return;
     }

     if(typeof(this) != "undefined")
       {
          input = String(this);
       }

     if(typeof(tokenize.arguments[0]) != "undefined")
       {
          separator = String(tokenize.arguments[0]);
       }

     if(typeof(tokenize.arguments[1]) != "undefined")
       {
          trim = String(tokenize.arguments[1]);
       }

     if(typeof(tokenize.arguments[2]) != "undefined")
       {
          if(!tokenize.arguments[2])
            ignoreEmptyTokens = false;
       }

     var array = input.split(separator);

     if(trim)
       for(var i=0; i<array.length; i++)
         {
           while(array[i].slice(0, trim.length) == trim)
             array[i] = array[i].slice(trim.length);
           while(array[i].slice(array[i].length-trim.length) == trim)
             array[i] = array[i].slice(0, array[i].length-trim.length);
         }

     var token = new Array();
     if(ignoreEmptyTokens)
       {
          for(var i=0; i<array.length; i++)
            if(array[i] != "")
              token.push(array[i]);
       }
     else
       {
          token = array;
       }

     return token;
  }
function checkForPass(){

   if($("confirmPassword").value.length != 0)
   {
	if(!isPasswordValid($("userDto.password").value) || $("userDto.password").value != $("confirmPassword").value) {
		
		$('roungpwd').style.display ="block";
		$('pwd').style.display = "none";
		return false;
	}else{
		
		$('pwd').style.display = "block";
		$('roungpwd').style.display ="none";
		
		if($('contactErrorMsg')!=null && $('contactErrorMsg').innerHTML =="Password and confirm password do not match"){
		$('contactErrorMsg').innerHTML = "";
		$('contactErrorDiv').style.display = "none";
		$('contactError').style.display = "none";
		}
		else{
			if($('infoErrorDiv')!=null && $('infoErrorMsg').innerHTML =="Password and confirm password do not match!"){
			$('infoErrorDiv').style.display = "none";
			}
		}
	}
   }
  
}

function checkForEmail(){

	   if($("confirmEmailAddress").value.length != 0)
	  {
		if(!isEmailValid($("userDto.loginId").value) || $("userDto.loginId").value != $("confirmEmailAddress").value) {
			$('roungEmail').style.display ="block";
			$('email').style.display = "none";
			return false;
		}else{
			$('email').style.display = "block";
			$('roungEmail').style.display ="none";
		}
	   }
	}


function checkForValidPass(){
	
	if(isPasswordValid($("userDto.password").value) && ($("userDto.password").value == $("confirmPassword").value)) 
	{
		$('pwd').style.display = "block";
		$('roungpwd').style.display ="none";
	}
	else
	{
		$('pwd').style.display = "none";
	}
}

function checkForValidEmail(){
	
	if(isEmailValid($("userDto.loginId").value) && ($("userDto.loginId").value == $("confirmEmailAddress").value)) 
	{
		$('email').style.display = "block";
		$('roungEmail').style.display ="none";
	}
	else
	{
		$('email').style.display = "none";
	}
}

function hideCrossImageForEmail()
{
	
	if(isEmailValid($("userDto.loginId").value) && ($("userDto.loginId").value == $("confirmEmailAddress").value)) 
	{
		$('email').style.display = "block";
		$('roungEmail').style.display ="none";
	}
	else
	{
		$('roungEmail').style.display = "none";
	}
}

function hideCrossImage()
{  
	
	if(isPasswordValid($("userDto.password").value) && ($("userDto.password").value == $("confirmPassword").value)) 
	{
		$('pwd').style.display = "block";
		$('roungpwd').style.display ="none";
	}
	else
	{
		$('roungpwd').style.display = "none";
	}
}

function checkForPass1(){
	if(!isPasswordValid($("userDto.password").value)) {
		$('roungpwd1').style.display ="block";
		$('pwd1').style.display = "none";
		return false;
	}else{
		$('pwd1').style.display = "block";
		$('roungpwd1').style.display ="none";
		
	}
}
function isBrowserIE() {
    if (navigator.appName.indexOf("Microsoft")!=-1) {
        return true; 
    } else {
    	return false;
    }
}

function getEightCharString(id) {
	var strId = id;
	if (strId.length == 1) {
		strId = "0000000" + strId;
	} else if (strId.length == 2) {
		strId = "000000" + strId;
	} else if (strId.length == 3) {
		strId = "00000" + strId;
	} else if (strId.length == 4) {
		strId = "0000" + strId;
	} else if (strId.length == 5) {
		strId = "000" + strId;
	} else if (strId.length == 6) {
		strId = "00" + strId;
	} else if (strId.length == 7) {
		strId = "0" + strId;
	}
	return strId;
}

/*feedback*/
function openFeedbackWindow(isLoggedIn,key){
	var feedbackId=document.getElementById("feedbackId").value;
	var id=document.getElementById("id").value;
	
	$('fbDto.pageUrl').value = window.location;
	if(!isLoggedIn){
		if($("captcha_image2") != null)
		{
			document.getElementById('captcha_image2').src = '/jcaptcha1?'+Math.random();
			document.getElementById("j_captcha_response2").value="";
			$('captchVarify').value = "";
		}
		$('fbDto.fromName').value = "";
		showHideCityState($('fbDto.cityState'), false);
		openModalWindow('feedbackModalWindow');
		
	}
	
	if(isLoggedIn || feedbackId == 1){
		if(isLoggedIn){
			$('fbDto.fromName').value = $('fnameInSsn').value;
		}
		showWaiting();
		var ajaxRequest = new Ajax.Request('feedback.action', {
			method :'post',
		    parameters :'isAjax=true&id='+id,
			onSuccess : function(transport) {
				if (transport.responseText == "exception") {
					hideWaiting();
					openModalWindow('errorModalWindow');
				} else if (transport.responseText == "sessionOut") {
					sendTo("sessionError");
				} else {
					hideWaiting();
					if(feedbackId == 1)
					{
						var res = transport.responseText;
						var ca = res.split('|');
						$('fbDto.cityState').value = ca[0];
						$('fbDto.fromName').value = ca[1];						
					}
					else
						$('fbDto.cityState').value = transport.responseText;
					showHideCityState($('fbDto.cityState'), false);
					openModalWindow('feedbackModalWindow');
				}
			},
			onFailure : function(transport) {
				hideWaiting();
				openModalWindow('errorModalWindow');
			},
			onException : function(transport) {
				hideWaiting();
				openModalWindow('errorModalWindow');
			}
		});
	}
}

function openMyWindow(){
	$('errorDiv').innerHTML = "";
	$('sellersEmailId').value = "";
	$('agentEmailId').value="";
	openModalWindow('viewPingModelWindow');
}

function closeFeedbackWindow(){
	$('fbDto.cityState').value = "";
	$('fbDto.text').value = "";
	$('fberrorDiv').innerHTML = "";
	closeModalWindow('feedbackModalWindow');
}


function verifyCAPTCHA(){
	// get the challenge and response for submission
	if(strTrimmer($("fbDto.fromName").value) == "" || strTrimmer($("fbDto.text").value) == "") {
		$('fberrorDiv').innerHTML = "Please fill in the mandatory fields!";
		return false;
	} else if(strTrimmer($("fbDto.cityState").value) != "" &&
			strTrimmer($("fbDto.cityState").value) != "Enter City,State" &&
			! isCityStateValid(strTrimmer($("fbDto.cityState").value))) {
		$('fberrorDiv').innerHTML = "Location format must be City,State!";
		return false;
	} else if(($("fbDto.text").value).length > 500) {
		$('fberrorDiv').innerHTML = "Feedback cannot exceed 1000 characters!";
		return false;
	} 
	
	$('fberrorDiv').innerHTML = "";
	
	if(strTrimmer($("j_captcha_response2").value)=="")
	{
		$('fberrorDiv').innerHTML = "Please enter your verification code.";
		hideWaiting();
		return false;
	}
	
	if($('captchVarify').value != "" && $('captchVarify').value == "verified")
	{
		validateFeedback();
		return true;
	}
	// ready to process, throw up a spinner
	showWaiting();
	
	// Build the Ajax request
	var ajaxRequest = new Ajax.Request('captcha.action',
		{
			method : 'post',
			parameters : Form.serialize($('saveFeedback'), false)+'&isAjax=true',
			onSuccess : function(transport) {
				if (transport.responseText == "exception") {
					hideWaiting();
					return false;
				} else if (transport.responseText == "sessionOut") {
					sendTo("sessionError");
				} else if (transport.responseText != "success") {
					$('fberrorDiv').innerHTML = "Please retry your verification code.";
					document.getElementById('captcha_image2').src = '/jcaptcha1?'+Math.random();
					$('j_captcha_response2').value = "";
					hideWaiting();
					$('captchVarify').value = "";
					return false;
				} else {
					hideWaiting();
					$('captchVarify').value = "verified";
					$('fberrorDiv').innerHTML = "";
					validateFeedback();
					limitText($('fbDto.text'),500);
					return true;
				}
			},
			onFailure : function(transport) {
				hideWaiting();
				return true;
			},
			onException : function(transport) {
				hideWaiting();
				return true;
			}
		});		
	}
var v=0;//GLOBAL VARIABLE FOR COUNTER
function validateFeedback() {

	if(strTrimmer($("fbDto.fromName").value) == "" || strTrimmer($("fbDto.text").value) == "") {
		$('fberrorDiv').innerHTML = "Please fill in the mandatory fields!";
		v=0;// AGAIN INTIALIZE THE V=0;
		
	} else if(strTrimmer($("fbDto.cityState").value) != "" &&
			strTrimmer($("fbDto.cityState").value) != "Enter City,State" &&
			! isCityStateValid(strTrimmer($("fbDto.cityState").value))) {
		$('fberrorDiv').innerHTML = "Location format must be City, State!";
		v=0;
		return false;
	} else if(($("fbDto.text").value).length > 500) {
		$('fberrorDiv').innerHTML = "Feedback cannot exceed 1000 characters!";
		v=0;
		
	}else if($("j_captcha_response2") != null && strTrimmer($("j_captcha_response2").value)==""){
		$('fberrorDiv').innerHTML = "Please enter your verification code.";
		hideWaiting();
		v=0;
		return false;
		
	} else {
		v++;
	   if(v=='1'){
		showWaiting();
		var ajaxRequest = new Ajax.Request($('saveFeedback').action, {
			method :'post',
			parameters :Form.serialize($('saveFeedback'), false)+ '&isAjax=true',
			onSuccess : function(transport) {
				if (transport.responseText == "exception") {
					hideWaiting();
					closeFeedbackWindow();
					openModalWindow('errorModalWindow');
				} else if (transport.responseText == "sessionOut") {
					sendTo("sessionError");
				}else if (transport.responseText == "captchaerror") {
					$('fberrorDiv').innerHTML = "Please retry your verification code.";
					document.getElementById('captcha_image2').src = '/jcaptcha1?'+Math.random();
					$('j_captcha_response2').value = "";
					hideWaiting();
					$('captchVarify').value = "";
					return false;
				}else {
					closeFeedbackWindow();
					hideWaiting();
					openModalWindow('confirmFeedbackModalWindow');
					setTimeout("closeModalWindow('confirmFeedbackModalWindow')", 6000);
				}
				 v=0;
			},
			onFailure : function(transport) {
				hideWaiting();
				closeFeedbackWindow();
				openModalWindow('errorModalWindow');
			},
			onException : function(transport) {
				hideWaiting();
				closeFeedbackWindow();
				openModalWindow('errorModalWindow');
			}
		});
	  }
	 
	}//if
}

function showHideCityState(obj, focused) {
	defText = "Enter City,State";
	if(focused) {
		if(obj.value == defText) {
			obj.style.color="#000000";
			obj.value = "";
		}
	} else {
		if(strTrimmer(obj.value) == "" || obj.value == "null") {
			obj.style.color="#999999";
			obj.value=defText;
		}
		if(obj.value != defText){
			obj.style.color="#000000";
			
		}
	}
}

function enableEnterKeyonFb(e){
	var key;
	  var eventSource;
	     if(window.event){
	       key = window.event.keyCode;     //IE
	       eventSource = window.event.srcElement;
	     }else{
	       key = e.which;     //firefox
	       eventSource = e.target;
	     } 
	     if(key == 13 && eventSource.tagName != "TEXTAREA"){
	    	 var agt = navigator.userAgent.toLowerCase();
	    	 if(agt.indexOf("safari") != -1)
	    	 {
	    		window.event.returnValue=false;
	    		window.event.cancel = true;
	    	 }
	    	 validateFeedback();     
			return true;
		 } else{
			return false;
		 }
}
/*-----------------------------------------------------------------------*/

/*report Abuse*/
function openReportAbuseWindow(param){
	if(!param){
		$("isFromProfile").value = "0";
		$("aRDto.reportedToID").value = "";
		showHideUserId($('aRDto.reportedToID'), false);
		openModalWindow('reportAbuseModalWindow');
	}else{	
		$("isFromProfile").value = "1";
		$("aRDto.reportedToID").value = getEightCharString($('sellerId').value);
		showHideUserId($('aRDto.reportedToID'), false);
		closeModalWindow('newOfferModalWindow');
		openModalWindow('reportAbuseModalWindow');
	}
}



function accountTypeModalWindow(param){ 
	openModalWindow('accountTypeModalWindow');
}

function closeReportAbuseWindow(){
	$('arerrorDiv').innerHTML = "";
	$('aRDto.abuseComment').value = "";
	closeModalWindow('reportAbuseModalWindow');
	if($("isFromProfile").value == "1"){
		openModalWindow('newOfferModalWindow');
	}
}

function saveReportAbuse() {
	if(strTrimmer($("aRDto.reportedToID").value) == "" || strTrimmer($("aRDto.reportedToID").value) == "e.g. 00010101" 
		|| strTrimmer($("aRDto.abuseComment").value) == "") {
		$('arerrorDiv').innerHTML = "Please fill in the mandatory fields!";
	} else if(!validateNumbers(strTrimmer($("aRDto.reportedToID").value)) 
				|| ($("aRDto.reportedToID").value).length != 8){
		$('arerrorDiv').innerHTML = "Report User must be a numeric value of 8 digits!";
	} else if(($("aRDto.abuseComment").value).length > 1000) {
		$('arerrorDiv').innerHTML = "Comments cannot exceed 1000 characters!";
	} else {
		showWaiting();
		var ajaxRequest = new Ajax.Request($('reportAbuse').action, {
			method :'post',
			parameters :Form.serialize($('reportAbuse'), false)+ '&isAjax=true',
			onSuccess : function(transport) {
				if (transport.responseText == "exception") {
					hideWaiting();
					closeReportAbuseWindow();
					openModalWindow('errorModalWindow');
					hideWaiting();
				} else if (transport.responseText == "invalid") {
					hideWaiting();
					$('arerrorDiv').innerHTML = "Invalid User!";
				} else if (transport.responseText == "sessionOut") {
					sendTo("sessionError");
				} else {
					$("isFromProfile").value = "0";
					closeReportAbuseWindow();
					hideWaiting();
				}
			},
			onFailure : function(transport) {
				hideWaiting();
				closeReportAbuseWindow();
				openModalWindow('errorModalWindow');
			},
			onException : function(transport) {
				hideWaiting();
				closeReportAbuseWindow();
				openModalWindow('errorModalWindow');
			}
		});
	}
}

function enableEnterKeyonAr(e){
	var key;
	  var eventSource;
	     if(window.event){
	       key = window.event.keyCode;     //IE
	       eventSource = window.event.srcElement;
	     }else{
	       key = e.which;     //firefox
	       eventSource = e.target;
	     } 
	     if(key == 13 && eventSource.tagName != "TEXTAREA"){
	    	 saveReportAbuse();     
			return true;
		 } else{
			return false;
		 }
}

function showHideUserId(obj, focused) {
	defText = "e.g. 00010101";
	if(focused) {
		if(obj.value == defText) {
			obj.style.color="#000000";
			obj.value = "";
		}
	} else {
		if(strTrimmer(obj.value) == "" || obj.value == "null") {
			obj.style.color="#999999";
			obj.value=defText;
		}
		if(obj.value != defText){
			obj.style.color="#000000";
		}
	}
}

function changeDate(name){
	var today = new Date();
	var dd = today.getDate();
	var mm = today.getMonth()+1;//January is 0!
	if(dd<10){dd='0'+dd}
	if(mm<10){mm='0'+mm}
	var my_date=mm + "/" + dd;
	$(name).innerHTML = my_date;
}

function limitText(limitField, limitNum) {
	if (limitField.value.length > limitNum) {
		return $(limitField).value = limitField.value.substring(0, limitNum);
	}
}
function strCommaTrimmer1(inputString){
	strToCheck =  new String();
	strToCheck = inputString;
	return strToCheck.substring(0, inputString.length-1);
}
function validFloatValue(str) {
	str = strTrimmer(str);
	return /^[-+]?[0-9]+(\.[0-9]+)?$/.test(str);
}

function FlashInstalled()
{
result = false;
if (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"])
{
result = navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin;
}
else if (document.all && (navigator.appVersion.indexOf("Mac")==-1))
{
eval ('try {var xObj = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");if (xObj) result = true; xObj = null; } catch (e) {}');
}
return result;
}




function checkForReferral() {
	var showFlag = 0;
	for(var i = 0;i<11;i++)
	{
		if($('refDto['+i+'].checked').checked && (strTrimmer($('refDto['+i+'].email').value) !='' || strTrimmer($('refDto['+i+'].firstName').value) !='' || strTrimmer($('refDto['+i+'].lastName').value) !='')) 
		{
			showFlag = 1;
			break;
		}
	}
	
	if(showFlag == 1)
	{
		$('skipDivHide').style.display = "block";
		$('skipDivShow').style.display = "none";
		$('sendDivShow').style.display = "block";
		$('sendDivHide').style.display = "none";
	}
	else
	{
		$('skipDivHide').style.display = "none";
		$('skipDivShow').style.display = "block";
		$('sendDivShow').style.display = "none";
		$('sendDivHide').style.display = "block";
	}
}

function checkForProReferral() {
	var showFlag = 0;
	for(var i = 0;i<11;i++)
	{
		if($('refDto['+i+'].checked').checked && (strTrimmer($('refDto['+i+'].broker').value) !='' || strTrimmer($('refDto['+i+'].email').value) !='' || strTrimmer($('refDto['+i+'].firstName').value) !='' || strTrimmer($('refDto['+i+'].lastName').value) !='')) 
		{
			showFlag = 1;
			break;
		}
	}
	
	if(showFlag == 1)
	{
		$('skipDivHide').style.display = "block";
		$('skipDivShow').style.display = "none";
		$('sendDivShow').style.display = "block";
		$('sendDivHide').style.display = "none";
	}
	else
	{
		$('skipDivHide').style.display = "none";
		$('skipDivShow').style.display = "block";
		$('sendDivShow').style.display = "none";
		$('sendDivHide').style.display = "block";
	}
}

function popitup(url) {
	var newwindow;
	var bSize = getBrowserWindowSize();
	//var h = bSize.height - 10;
	//var w = bSize.width - 100;
	var left   = (bSize.width  - 670)/2;
	var top    = (bSize.height - 450)/2;

	newwindow=window.open(url,'name','height='+450+',width='+671+',left='+left+',top='+top+',resizable=no,minimisable=yes, dialog=yes, minimizable=yes,toolbar=no,location=no, directories=no, status=no, menubar=no, scrollbars=yes');	if (window.focus) {newwindow.focus();}
	return false;
}
function robustAmountRegex(content){
	content = strTrimmer(content.replace(/\u00a0/g,'').toLowerCase());
	var objRegExp  =  /(^[$]?[0-9]*[,]?[0-9]*[,]?[0-9]*[\.]?[0-9]+[kmKM]?[\+]?$)/;
	if(objRegExp.test(content)){
		if(content.indexOf(",,") >= 0)
			return false;
		else
			return true;
	}
	return objRegExp.test(content);	
}
function robustSizeRegex(content){
	var objRegExp  =  /(^[0-9]*[,]?[0-9]+[,]?[0-9]*[\.]?[0-9]+$)/;
	return objRegExp.test(content);
	
}
function fieldCommaTrimmer(content){
	return content.replace(/(\d),(\d)/g, '$1$2');	
}

function getPriceWithComma(price) {
	var value = price;
	var stringFormat = "";
	if (value.length == 4) {
		stringFormat = value.substring(0, 1) + ","
				+ value.substring(1, value.length);
	} else if (value.length == 5) {
		stringFormat = value.substring(0, 2) + ","
				+ value.substring(2, value.length);
	} else if (value.length == 6) {
		stringFormat = value.substring(0, 3) + ","
				+ value.substring(3, value.length);
	} else if (value.length == 7) {
		stringFormat = value.substring(0, 1) + "," + value.substring(1, 4)
				+ "," + value.substring(4, value.length);
	} else if (value.length == 8) {
		stringFormat = value.substring(0, 2) + "," + value.substring(2, 5)
				+ "," + value.substring(5, value.length);
	} else {
		stringFormat = value;
	}
	return stringFormat;
}

function getPriceToSave(price) {
	price = strTrimmer(price);
	price = price.replace("$","");
	price = price.replace(/,/g,"");
	var priceToSave = price;
	
	if (price.indexOf("k") != -1 || price.indexOf("K") != -1) {
		price = price.replace("k","").replace("K","");
		priceToSave = parseFloat(price) * 1000;
		priceToSave = Math.round(priceToSave);
	}else if (price.indexOf("m") != -1 || price.indexOf("M") != -1) {
		price = price.replace("m","").replace("M","");
		priceToSave = parseFloat(price) * 1000000;
		priceToSave = Math.round(priceToSave);
	}else if (price.indexOf(".") != -1){
		priceToSave = Math.round(price);
	}
	return priceToSave+'';
}

function showHideRejectText(obj,focused)
{
	defText = "e.g. I'd like to live closer to public transportation.";
	if(focused) {
		if(obj.value==defText) {
			obj.style.color="#000000";
			obj.value="";
		}
	} else {
		if(strTrimmer(obj.value)=="") {
			obj.style.color="#999999";
			obj.value=defText;
		}
	}
}

function showHideHeldText(obj,focused)
{
	defText = "e.g. Can you clarify the size of the yard? When can I view the property?";
	if(focused) {
		if(obj.value==defText) {
			obj.style.color="#000000";
			obj.value="";
		}
	} else {
		if(strTrimmer(obj.value)=="") {
			obj.style.color="#999999";
			obj.value=defText;
		}
	}
}

function showHideAcceptText(obj,focused)
{
	defText = "e.g. This looks like a great offer, let's chat. I can be reached at 510-555-1234. My email is barrybuyer@gmail.com. Or, you can speak to my agent, Andy Agent, at 510-555-4321.";
	if(focused) {
		if(obj.value==defText) {
			obj.style.color="#000000";
			obj.value="";
		}
	} else {
		if(strTrimmer(obj.value)=="") {
			obj.style.color="#999999";
			obj.value=defText;
		}
	}
}

function showUserDetails(obj, focused) {
	if(obj){
		defText = "Where did you hear about us?";
		if(focused) {
			if(obj.value==defText) {
				obj.style.color="#000000";
				obj.value="";
			}
			else
			{
				obj.style.color="#000000";
			}	
		} else {
			if(strTrimmer(obj.value)=="") {
				obj.style.color="#999999";
				obj.value=defText;
			}
			else
			{
				if(obj.value != defText)
					obj.style.color="#000000";
			}
		}
	}
}

function refreshJcaptcha()
{
	document.getElementById('captcha_image2').src = '/jcaptcha1?'+Math.random();
	$('captchVarify').value = "";
	$('j_captcha_response2').value = "";
}


function refreshJcaptchaReg()
{
	document.getElementById('captcha_image1').src = '/jcaptcha?'+Math.random();
	$('captchVarify').value = "";
	$('j_captcha_response').value = "";
}

function logErrorCaptch(pageName)
{
	var ajaxRequest = new Ajax.Request('logErrorcaptcha.action',
			{
				method : 'post',
				parameters : 'pageName='+ pageName +'&isAjax=true',
				onSuccess : function(transport) {
					if (transport.responseText == "exception") {
						return true;
					} else if (transport.responseText == "sessionOut") {
						sendTo("sessionError");
					} else if (transport.responseText != "success") {
						return true;
					} else {
						return true;
					}
				},
				onFailure : function(transport) {
					return true;
				},
				onException : function(transport) {
					return true;
				}
			});		

}

function onTabKeyPress(evt){
	
	var agt = navigator.userAgent.toLowerCase();

		 if(agt.indexOf("safari") != -1 ){
		var target =window.event.target;
		if (target.descendantOf('loginModalWindow')){
		
			if (target.name.toString()=="rememberMe"){
			$('loginId').focus();
		    window.event.cancel = true;
		    window.event.returnValue=false;
	        }
		}
  }else{
	
	 if(agt.indexOf("msie") != -1 ){
	
		 }else{
	  var target = evt.target ? evt.target : evt.srcElement;
	if(evt.target.toString().indexOf("closeLoginWindow") >= 0)
	{
		Event.stop(evt); // stop default event
		$('loginId').focus();
	}
	
	if (target.descendantOf('loginModalWindow')){
		return; // allow tab natural next field for field inside modal window
	}else{
		Event.stop(evt); // stop default event
		$('loginId').focus();
	}
  }
  }
} 

function checkKeyPress(evt){
	var agt = navigator.userAgent.toLowerCase();

if(agt.indexOf("safari") != -1){	
}else if(agt.indexOf("mozilla") != -1){
 
	 if(agt.indexOf("msie") != -1 ){
	
		 }else{
	var target = evt.target ? evt.target : evt.srcElement;
	if($('loginModalWindow').style.display == "" && !target.descendantOf('loginModalWindow'))
	{
		Event.stop(evt);
		$('loginId').focus();
	}
}
}

} 

function replaceAll(text, strA, strB)
{
    while ( text.indexOf(strA) != -1)
    {
        text = text.replace(strA,strB);
    }
    return text;
}
function clearAuthEmailText()
{
	$('bADto.authEmail').value = "";
}
function clearErrorMsg(obj)
{
	$(obj).innerHTML = "";
}

function detectxss(div,errorDiv,mainDiv) {
	 var chNode = div.getElementsByTagName('*');
	 if(chNode !=null && chNode.length>0){	
	 	for(i=0; i<chNode.length; i++) {
			var field = chNode[i];
			if(field.type == 'text'||
			field.type == 'textarea') {
				var m = new RegExp('((\%3[cC])|<)((\%2[Ff])|\/)*[A-Za-z0-9\%]+((\%3[Ee])|>)');
				if (m.exec(field.value)) {
					$(errorDiv).innerHTML = 'Script not allowed.';
					$(mainDiv).style.display = "block";
					return false;
				}
			}
	 	}
	}
	return true;
}

var state;

function checkForPassword(){

	   if($("confNewPassword").value.length != 0)
	   {
		if(!isPasswordValid($("newPassword").value) || $("newPassword").value != $("confNewPassword").value) {
			
			$('roungpwd').style.display ="block";
			$('pwd').style.display = "none";
			return false;
		}else{
			$('roungpwd').style.display ="none";
			$('pwd').style.display = "block";
			return true;
		}
	   }
	}

function activateParBuyer(){

	if(checkForPassword()){
		
	  $('activatePartnersBuyerSubmit').submit();
	}else{
		 
       if($("newPassword").value.length==0 || $("confNewPassword").value.length==0){
		   $('infoErrorMsg').innerHTML = "Please fill in the mandatory fields.";
			$('infoErrorDiv').style.display = "block";
	   } else{
		//$('errorDiv').innerHTML = "Password and confirm password do not match";
		$('infoErrorMsg').innerHTML = "Password must be Alpha-numeric & at least six characters long!";
			$('infoErrorDiv').style.display = "block";
	   }

	}
}

function enableEnterKeyCP(e, formNm){
	 var key;
  var eventSource;
     if(window.event){
       key = window.event.keyCode;     //IE
       eventSource = window.event.srcElement;
     }else{
       key = e.which;     //firefox
       eventSource = e.target;
     } 
	 
		  if (key == 13){
			  activateParBuyer();
			  window.event.returnValue=false;
			  window.event.cancel = true;
			 
		  }
  	
}
