
	function storeCaret (textEl) {
		if (textEl.createTextRange) 
			textEl.caretPos = document.selection.createRange().duplicate();
		}
	function insertAtCaret (textEl, text) {
		if (textEl.caretPos == undefined) {
			alert('No insert location selected.  Please click inside the text area where you would like to insert.');
		} else {
			if (textEl.createTextRange && textEl.caretPos) {
				var caretPos = textEl.caretPos;
				caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
			} else {
				textEl.value  = text;
			}
		}
	}

function checkLoginForm() {
	var strMessage = '';
	if (document.login_form.strUsername.value=='') {
		strMessage = 'Please Enter Username';
	}
	if (document.login_form.strPassword.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Password';
	}
	if (strMessage != '') {
		alert(strMessage);
		return false;
	} else {
		return true;
	}
}
function isEmail(str) {
	var supported = 0;
		if (window.RegExp) {
			var tempStr = "a";
			var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
		}
		if (!supported) 
			return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
			var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
			var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	return (!r1.test(str) && r2.test(str));
}
function IsNumeric(sText) {
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
}
function openTestimonialsWindow(url, name) {
   var left = Math.floor( (screen.width - (550)) / 2);
   var top = Math.floor( (screen.height - (675)) / 2);
   var winParms = "top=" + top + ",left=" + left + ",height=" + 675 + ",width=" + 550 + 'resizable=1,scrollbars=1';
   var win = window.open(url, name, winParms);
   if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}
function checkBlastForm() {
	var strMessage = '';
	if (document.blast_form.strBody.value == '') {
		strMessage = 'Please Enter the Body of The Email';
	}
	if (strMessage != '') {
		alert(strMessage);
		return false;
	} else {
		return true;
	}
}
function checkEditUserHousesForm() {
	var strMessage = '';
	if (document.adminForm.strAddressLine1.value=='') {
		strMessage = 'Please Enter Address Line 1';
	}
	if (document.adminForm.strCity.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter City';
	}
	if (document.adminForm.strState.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter State';
	}
	if (document.adminForm.strZip.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Zip';
	}
	if (document.adminForm.strSq_Ft.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Square Feet';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.adminForm.numPurchasePrice.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Purchase Price';
	}
	if (document.adminForm.numPurchasePrice.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Purchase Price';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.adminForm.numDownPaymentLow.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Down Payment Low';
	}
	if (document.adminForm.numDownPaymentLow.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Down Payment Low';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.adminForm.numInterestRateLow.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Interest Rate Low';
	}
	if (document.adminForm.numInterestRateLow.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Interest Rate Low';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.adminForm.numDownPaymentHigh.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Down Payment High';
	}
	if (document.adminForm.numDownPaymentHigh.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Down Payment High';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.adminForm.numInterestRateHigh.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Interest Rate High';
	}
	if (document.adminForm.numInterestRateHigh.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Interest Rate High';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.adminForm.numMonthlyRent1.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Monthly Rent 1';
	}
	if (document.adminForm.numMonthlyRent1.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Monthly Rent 1';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.adminForm.numRentCredit1.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Rent Credit 1';
	}
	if (document.adminForm.numRentCredit1.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Rent Credit 1';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.adminForm.numMonthlyRent2.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Monthly Rent 2';
	}
	if (document.adminForm.numMonthlyRent2.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Monthly Rent 2';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.adminForm.numRentCredit2.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Rent Credit 2';
	}
	if (document.adminForm.numRentCredit2.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Rent Credit 2';
	}
	if (document.adminForm.strFeatures.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Features';
	}
	if (document.adminForm.strDescription.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Description';
	}
	if (document.adminForm.strDirections.value=='') {
		strMessage = strMessage + '\n' + 'Please Enter Directions';
	}
	if (strMessage != '') {
		alert(strMessage);
		return false;
	} else {
		return true;
	}
}
function checkBuyerForm() {
	var strMessage = '';
	if (document.buyer_form.strFname.value == '') {
		strMessage = 'Please Enter First Name';
	}
	if (document.buyer_form.strLname.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Last Name';
	}
	if (document.buyer_form.strHome_Phone.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Home Phone';
	}
	if (document.buyer_form.strBestTimeToCallHome.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Best Time To Call Home';
	}
	if (document.buyer_form.strWork_Phone.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Work Phone';
	}
	if (document.buyer_form.strBestTimeToCallWork.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Best Time To Call Work';
	}
	if (document.buyer_form.strCell_Pager.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Cell Pager';
	}
	if (document.buyer_form.strEmail.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Email';
	}
	if (document.buyer_form.strAddressLine1.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Address Line 1';
	}
	if (document.buyer_form.strAddressLine2.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Address Line 2';
	}
	if (document.buyer_form.strState.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter State';
	}
	if (document.buyer_form.strOccupied.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Occupied';
	}
	if (document.buyer_form.strHadItForSale.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Had It For Sale';
	}
	if (document.buyer_form.strMonths.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Months';
	}
	if (document.buyer_form.strCurrentlyListed.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Currently Listed';
	}
	if (document.buyer_form.strListingExpirationDate.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Listing Expiration Date';
	}
	if (document.buyer_form.strForeclosing.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Foreclosing';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.user_houses.strToReinstateNeeded.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Reinstate Needed';
	}
	if (document.buyer_form.strToReinstateNeeded.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter To Reinstate Needed';
	}
	if (document.buyer_form.strWhySelling.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Why Selling';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.user_houses.strWorth.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Worth';
	}
	if (document.buyer_form.strWorth.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Worth';
	}
	if (document.buyer_form.strHowDeterminePrice.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter How Determine Price';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.user_houses.strFirstBalance.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for First Balance';
	}
	if (document.buyer_form.strFirstBalance.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter First Balance';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.user_houses.strFirstPayment.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for First Payment';
	}
	if (document.buyer_form.strFirstPayment.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter First Payment';
	}
	if (document.buyer_form.strTaxInsIncluded.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Tax Insurance Included';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.user_houses.strSecondBalance.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Second Balance';
	}
	if (document.buyer_form.strSecondBalance.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Second Balance';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.user_houses.strSecondPayment.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for Second Payment';
	}
	if (document.buyer_form.strSecondPayment.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Second Payment';
	}
	<!------------------------------------------------------------------------------------>
	if (! IsNumeric(document.user_houses.strHOA_Dues.value)) {
		strMessage = strMessage + '\n' + 'Please Enter Numbers Only for HOA Dues';
	}
	if (document.buyer_form.strHOA_Dues.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter HOA Dues';
	}
	if (document.buyer_form.strMainObjective.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Main Objective';
	}
	if (document.buyer_form.strNetCashNeededNow.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Net Cash Needed Now';
	}
	if (document.buyer_form.strConsiderMoPayments.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Consider Monthly Payments';
	}
	if (document.buyer_form.strWhenToClose.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter When To Close';
	}
	if (document.buyer_form.strLeadSource.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Lead Source';
	}
	if (strMessage != '') {
		alert(strMessage);
		return false;
	} else {
		return true;
	}
}
function checkProfile() {
	var strMessage = '';
	if (document.adminForm.strCompany.value == '') {
		strMessage = 'Please Enter Company';
	}
	if (isEmail(document.adminForm.strEmail.value) == false) {
		strMessage = strMessage + '\n' + 'Please Enter Valid Email';
	}
	if (document.adminForm.strPhone1.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Phone 1';
	}
	if (document.adminForm.strFax1.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Fax 1';
	}
	if (document.adminForm.strName1.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Name1';
	}
	if (document.adminForm.strAddressLine1.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Address Line 1';
	}
	if (document.adminForm.strCity.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter City';
	}
	if (document.adminForm.strState.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter State';
	}
	if (document.adminForm.strZip.value == '') {
		strMessage = strMessage + '\n' + 'Please Enter Zip';
	}
	if (strMessage != '') {
		alert(strMessage);
		return false;
	} else {
		return true;
	}
}
function checkDeleteHouse() {
	var result = confirm ( 'Are you sure you want to delete?' );
	if (result == true) {
		return true;
	}
}
function redirect_sell() {
	window.location='<cfoutput>#strtApplication.strBaseMain#</cfoutput>Buy/';	
}
function redirect_buy() {
	window.location='<cfoutput>#strtApplication.strBaseMain#</cfoutput>Sell/';	
}
function redirect_profile_sell() {
	window.location='<cfoutput>#strtApplication.strBaseMain#</cfoutput>Sell/Profile.cfm';	
}
function redirect_profile_buy() {
	window.location='<cfoutput>#strtApplication.strBaseMain#</cfoutput>Buy/Profile.cfm';	
}