function randomString() {var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";var string_length = 12;var randomstring = '';for (var i=0; i\,\;\:\\\"\[\]] /;if (strng.match(illegalChars)) {result = false;}}return result;}function validPhoneNumber (strng) {strng = strng.replace(/ +/g, "");strng = strng.replace(/[x\(\)-\.]+/g, "");if ( strng.length >= 10 ) {if ( parseInt(strng,10)==strng ) {return true;} else {return false;}} else {return false;}}function releaseHXR( HTTP ){if ( HTTP ) delete HTTP;}function getRadioButtonValue( rButton ) {rbval = "";len = rButton.length;for (i = 0; i < len; i++) {if (rButton[i].checked) {rbval = rButton[i].value;}}return rbval;}function searchPublicPropertiesKeyDown( e, form, searchdiv, button ) {var keynum;var keychar;var numcheck;if ( window.event ) {keynum = e.keyCode;}else if ( e.which ) {keynum = e.which;}if ( keynum == 13 ) {searchPublicProperties( form, searchdiv, button );return false;} else {return true;}}function togglePhotos(id) {var pBox = document.getElementById("photoContainer"+id);var pDiv = document.getElementById("photos"+id);if ( pBox.style.display != "none" ) {$(pBox).slideUp('slow');} else {var wurl = "publicgateway.php";$.post(wurl, {lp: "property-mod-property",action: "get-photos",id: id },function( response ) {pDiv.innerHTML = response;$(pBox).slideDown('slow');});}}function searchPublicProperties( form, searchdiv, button ) {var pForm = document.getElementById(form);var req = getHXR();var psearchdiv = document.getElementById(searchdiv);var pButton = document.getElementById(button);var pButtonHTML = pButton.innerHTML;var pPool = getRadioButtonValue( pForm.has_pool );var pSpa = getRadioButtonValue( pForm.has_spa );psearchdiv.innerHTML = "
Searching Properties...
";pButton.innerHTML = "Searching Properties...";var wurl = "publicgateway.php";var params = "lp=property-mod-property" +"&action=search-properties" +"&mls_number=" + escape( pForm.mls_number.value ) +"&street_address=" + escape( pForm.street_address.value ) +"&address_search_type=" + escape( pForm.address_search_type.value ) +"&unit_number=" + escape( pForm.unit_number.value ) +"&city=" + escape( pForm.city.value ) +"&market_id=" + escape( pForm.market_id.value ) +"&zip_code=" + escape( pForm.zip_code.value ) +"&bedrooms=" + escape( pForm.bedrooms.value ) +"&bed_search_type=" + escape( pForm.bed_search_type.value ) +"&bathrooms=" + escape( pForm.bathrooms.value ) +"&bath_search_type=" + escape( pForm.bath_search_type.value ) +"&square_footage=" + escape( pForm.square_footage.value ) +"&garage=" + escape( pForm.garage.value ) +"&property_type=" + escape( pForm.property_type.value ) +"&sqft_search_type=" + escape( pForm.sqft_search_type.value ) +"&price_low=" + escape( pForm.price_low.value ) +"&price_high=" + escape( pForm.price_high.value ) +"&has_spa=" + escape( pSpa ) +"&has_pool=" + escape( pPool );req.open("POST", wurl, true);req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");req.setRequestHeader("Content-length", params.length);req.setRequestHeader("Connection", "close");req.onreadystatechange = function( ) {if(req.readyState == 4){var results=req.responseText;psearchdiv.innerHTML = results;pButton.innerHTML = pButtonHTML;}};req.send(params);releaseHXR( req );}function getAgentPropInfo( div, id ) {var the_pass=window.prompt("Please enter the agent password.","");if ( the_pass == "" ) {alert("You must enter a password.");} else if ( the_pass == null ) {return;} else {var pDiv = document.getElementById(div);var req = getHXR();var pDivHTML = pDiv.innerHTML;pDiv.innerHTML = "Loading info...";var wurl = "publicgateway.php";var params = "lp=property-mod-property" +"&action=get-agent-prop-info" +"&agentPublicInfoPass=" + the_pass +"&id=" + id;req.open("POST", wurl, true);req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");req.setRequestHeader("Content-length", params.length);req.setRequestHeader("Connection", "close");req.onreadystatechange = function( ) {if(req.readyState == 4){var results=req.responseText;pDiv.innerHTML = results;}};req.send(params);releaseHXR( req );}}function extendedLoginKeyDown( e ) {var keynum;var keychar;var numcheck;if ( window.event ) {keynum = e.keyCode;}else if ( e.which ) {keynum = e.which;}if ( keynum == 13 ) {extendedLogin( );return false;} else {return true;}}function extendedLogin() {var pass=document.getElementById('extendedLogin').value;if ( pass == "" ) {alert("You must enter a password.");} else if ( pass == null ) {return;} else {var pDiv = document.getElementById('extendedLoginResult');var pWrapper = document.getElementById('extendedLoginWrapper');var req = getHXR();pDiv.innerHTML = "Validating...";var wurl = "publicgateway.php";var params = "lp=property-mod-property" +"&action=do-extended-login" +"&publicSiteExtendedPass=" + pass;req.open("POST", wurl, true);req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");req.setRequestHeader("Content-length", params.length);req.setRequestHeader("Connection", "close");req.onreadystatechange = function( ) {if(req.readyState == 4){var results=req.responseText;if ( results == "Login Failed" ) {pDiv.innerHTML = results;} else {pWrapper.innerHTML = results;}}};req.send(params);releaseHXR( req );}}function logoutExtended() {var pWrapper = document.getElementById('extendedLoginWrapper');var req = getHXR();var wurl = "publicgateway.php";var params = "lp=property-mod-property" +"&action=do-extended-logout";req.open("POST", wurl, true);req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");req.setRequestHeader("Content-length", params.length);req.setRequestHeader("Connection", "close");req.onreadystatechange = function( ) {if(req.readyState == 4){var results=req.responseText;pWrapper.innerHTML = results;}};req.send(params);releaseHXR( req );}function checkDocument( form ) {var pForm = document.getElementById(form);for (var i = 0; i < pForm.elements.length; i++) {if ( pForm.elements[i].name == "documents[]" ) {var fileExten = pForm.elements[i].value.toLowerCase();if ( fileExten.lastIndexOf(".pdf")==-1 ) {if ( fileExten.lastIndexOf(".doc")==-1 ) {if ( fileExten.lastIndexOf(".xls")==-1 ) {if ( fileExten.lastIndexOf(".jpg")==-1 ) {alert("You can only upload a document as .pdf .doc .xls or .jpg files. Make sure the file has a file extension.");return false;}}}}}}var pDiv = document.getElementById("uploadDocumentButtons");pDiv.innerHTML = "Uploading Document...
This may take a up to a few minutes
depending on the file size.";pForm.submit();}function checkOffer( form ){var pForm = document.getElementById(form);if ( !pForm.p.value.length ) {alert( "You are not currently viewing a property." );return false;}if ( !pForm.buyer_name.value.length ) {alert( "Please enter a buyer name." );pForm.buyer_name.focus();return false;}if ( !pForm.offer_amount.value.length ) {alert( "Please enter an offer amount." );pForm.offer_amount.focus();return false;}if ( !pForm.loan_amount.value.length ) {alert( "Please enter a loan amount." );pForm.loan_amount.focus();return false;}if ( !pForm.earnest_amount.value.length ) {alert( "Please enter an earnest amount." );pForm.earnest_amount.focus();return false;}if ( !pForm.owner_occupied.value.length ) {alert( "Please select an owner occupied status." );pForm.owner_occupied.focus();return false;}if ( !pForm.first_time_buyer.value.length ) {alert( "Please select a first time buyer status." );pForm.first_time_buyer.focus();return false;}if ( !pForm.loan_type.value.length ) {alert( "Please select a Loan Type." );pForm.loan_type.focus();return false;}if ( !pForm.ltv_percent.value.length ) {alert( "Please enter a LTV Percent." );pForm.ltv_percent.focus();return false;}if ( !pForm.agent_company.value.length ) {alert( "Please enter an Agent Company." );pForm.agent_company.focus();return false;}if ( !pForm.agent_name.value.length ) {alert( "Please enter an Agent Name." );pForm.agent_name.focus();return false;}if ( !validEmail(pForm.agent_email.value) ) {alert( "Please enter a valid email address." );pForm.agent_email.focus();return false;}if ( !validPhoneNumber(pForm.agent_phone.value) ) {alert( "Please enter a valid phone number." );pForm.agent_phone.focus();return false;}if ( !validPhoneNumber(pForm.agent_cell.value) ) {alert( "Please enter a valid cell phone number." );pForm.agent_cell.focus();return false;}if ( !validPhoneNumber(pForm.agent_fax.value) ) {alert( "Please enter a valid fax number." );pForm.agent_fax.focus();return false;}if ( !pForm.lender_company.value.length && pForm.loan_type.value != "Cash" ) {alert( "Please enter an Lender Company." );pForm.lender_company.focus();return false;}if ( !pForm.lender_name.value.length && pForm.loan_type.value != "Cash" ) {alert( "Please enter an Lender Name." );pForm.lender_name.focus();return false;}if ( !validPhoneNumber(pForm.lender_phone.value) && pForm.loan_type.value != "Cash" ) {alert( "Please enter a valid phone number." );pForm.lender_phone.focus();return false;}if ( !validEmail(pForm.lender_email.value) && pForm.loan_type.value != "Cash" ) {alert( "Please enter a valid email address." );pForm.lender_email.focus();return false;}for (var i = 0; i < pForm.elements.length; i++) {if ( pForm.elements[i].name == "purchaseAgreement[]" ) {var fileExten = pForm.elements[i].value.toLowerCase();if ( fileExten.lastIndexOf(".pdf")==-1 ) {if ( fileExten.lastIndexOf(".doc")==-1 ) {if ( fileExten.lastIndexOf(".xls")==-1 ) {if ( fileExten.lastIndexOf(".jpg")==-1 ) {alert("You must upload a purchase agreement as .pdf .doc .xls or .jpg files. Make sure the file has a file extension.");return false;}}}}}}if ( !pForm.pass_phrase.value.length ) {alert( "Please enter a pass phrase." );pForm.pass_phrase.focus();return false;}if ( !pForm.agree_to_terms.checked ) {alert( "You must agree to the terms of this offer." );pForm.agree_to_terms.focus();return false;}var pDiv = document.getElementById("addOfferButtons");pDiv.innerHTML = "Submitting Offer...
This may take a up to a few minutes
depending on the file size.";pForm.submit();}var purAgreeFileCount = 0;function addPurchaseAgreement ( div ) {var pDiv = document.getElementById(div);var divTag = document.createElement("div");purAgreeFileCount++;divTag.id = "purAgreeFile" + purAgreeFileCount;divTag.innerHTML = ' Remove';pDiv.appendChild(divTag);}function removePurchaseAgreement ( parent, child ) {var pParent = document.getElementById(parent);var pChild = document.getElementById(child);pParent.removeChild(pChild);}function addPhone ( div, form ) {var pDiv = document.getElementById(div);var pForm = document.getElementById(form);var pPhoneTypeInput = document.getElementById('phoneTypeInput').innerHTML;var phoneCount = 0;for (var i = 0; i < pForm.elements['phones[]'].length; i++) {phoneCount++;}phoneCount++;if ( phoneCount == 1 ) {phoneCount = 2;}var divTag = document.createElement("div");divTag.id = "phone" + phoneCount;divTag.name = "phone" + phoneCount;divTag.innerHTML = pPhoneTypeInput + ' Remove';pDiv.appendChild(divTag);}function checkContact( form ) {if ( !form.first_name.value.length && !form.last_name.value.length && !form.company.value.length ) {alert( "Please enter either a company name or a first name and last name." );form.first_name.focus();return false;}var checkedPhones = false;for (var i = 0; i < form.elements['phones[]'].length; i++) {checkedPhones = true;if ( !validPhoneNumber( form.elements['phones[]'][i].value ) && form.elements['phones[]'][i].value.length ) {alert( "Please fix invalid phone numbers." );form.elements['phones[]'][i].focus();return false;}}if ( checkedPhones == false ) {if ( !validPhoneNumber( form.elements['phones[]'].value ) && form.elements['phones[]'].value.length ) {alert( "Please fix invalid phone numbers." );form.elements['phones[]'].focus();return false;}}var checkedEmails = false;for (var i = 0; i < form.elements['emails[]'].length; i++) {checkedEmails = true;if ( !validEmail( form.elements['emails[]'][i].value ) && form.elements['emails[]'][i].value.length ) {alert( "Please fix invalid email addresses." );form.elements['emails[]'][i].focus();return false;}}if ( checkedEmails == false ) {if ( !validEmail( form.elements['emails[]'].value ) && form.elements['emails[]'].value.length ) {alert( "Please fix invalid email addresses." );form.elements['emails[]'].focus();return false;}}return true;}function editContactFromDialog( form, button ) {var pForm = form;if ( !checkContact(pForm) ) return false;var req = getHXR();var pButton = document.getElementById(button);var pButtonHTML = pButton.innerHTML;pButton.innerHTML = "Saving Contact...";var wurl = ajaxURL();var params = "lp=contacts-mod-contact" +"&action=update-contact-public-dialog" +"&company=" + escape( pForm.company.value ) +"&id=" + escape( pForm.id.value ) +"&first_name=" + escape( pForm.first_name.value ) +"&last_name=" + escape( pForm.last_name.value ) +"&title=" + escape( pForm.title.value ) +"&url=" + escape( pForm.url.value );if ( pForm.elements['show_as_company'].checked ) params = params + "&show_as_company=1";var multiple = false;for (var i = 0; i < pForm.elements['phones[]'].length; i++) {multiple = true;params = params + "&phones[]=" + escape( pForm.elements['phones[]'][i].value );params = params + "&phone_labels[]=" + escape( pForm.elements['phone_labels[]'][i].value );}if ( !multiple ) {params = params + "&phones[]=" + escape( pForm.elements['phones[]'].value );params = params + "&phone_labels[]=" + escape( pForm.elements['phone_labels[]'].value );}multiple = false;for (var i = 0; i < pForm.elements['emails[]'].length; i++) {multiple = true;params = params + "&emails[]=" + escape( pForm.elements['emails[]'][i].value );params = params + "&email_labels[]=" + escape( pForm.elements['email_labels[]'][i].value );}if ( !multiple ) {params = params + "&emails[]=" + escape( pForm.elements['emails[]'].value );params = params + "&email_labels[]=" + escape( pForm.elements['email_labels[]'].value );}multiple = false;for (var i = 0; i < pForm.elements['addresses[]'].length; i++) {multiple = true;params = params + "&addresses[]=" + escape( pForm.elements['addresses[]'][i].value );params = params + "&address_labels[]=" + escape( pForm.elements['address_labels[]'][i].value );}if ( !multiple ) {params = params + "&addresses[]=" + escape( pForm.elements['addresses[]'].value );params = params + "&address_labels[]=" + escape( pForm.elements['address_labels[]'].value );}req.open("POST", wurl, true);req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");req.setRequestHeader("Content-length", params.length);req.setRequestHeader("Connection", "close");req.onreadystatechange = function( ) {if(req.readyState == 4){var response=req.responseText;alert(response);pButton.innerHTML = pButtonHTML;}};req.send(params);releaseHXR( req );return false;}function addEmail ( div, form ) {var pDiv = document.getElementById(div);var pForm = document.getElementById(form);var pEmailTypeInput = document.getElementById('emailTypeInput').innerHTML;var emailCount = 0;for (var i = 0; i < pForm.elements['emails[]'].length; i++) {emailCount++;}emailCount++;if ( emailCount == 1 ) {emailCount = 2;}var divTag = document.createElement("div");divTag.id = "email" + emailCount;divTag.name = "email" + emailCount;divTag.innerHTML = pEmailTypeInput + ' Remove';pDiv.appendChild(divTag);}function addAddress ( div, form ) {var pDiv = document.getElementById(div);var pForm = document.getElementById(form);var pAddressTypeInput = document.getElementById('addressTypeInput').innerHTML;var addressCount = 0;for (var i = 0; i < pForm.elements['addresses[]'].length; i++) {addressCount++;}addressCount++;if ( addressCount == 1 ) {addressCount = 2;}var divTag = document.createElement("div");divTag.id = "address" + addressCount;divTag.name = "address" + addressCount;var removeLink = ' Remove';divTag.innerHTML = pAddressTypeInput.replace( "bbRemoveLink", removeLink );pDiv.appendChild(divTag);}function removePhone ( parent, child ) {var pParent = document.getElementById(parent);var pChildren = pParent.children;for (var i = 0; i < pChildren.length; i++) {if ( pChildren[i].id == child ) {pParent.removeChild(pChildren[i]);}}}function removeEmail ( parent, child ) {var pParent = document.getElementById(parent);var pChildren = pParent.children;for (var i = 0; i < pChildren.length; i++) {if ( pChildren[i].id == child ) {pParent.removeChild(pChildren[i]);}}}function removeAddress ( parent, child ) {var pParent = document.getElementById(parent);var pChildren = pParent.children;for (var i = 0; i < pChildren.length; i++) {if ( pChildren[i].id == child ) {pParent.removeChild(pChildren[i]);}}}function removeAttachment ( parent, child ) {var pParent = document.getElementById(parent);var pChildren = pParent.children;for (var i = 0; i < pChildren.length; i++) {if ( pChildren[i].id == child ) {pParent.removeChild(pChildren[i]);}}}function roundIt( passValue, passResolution ) {var multiplier = Math.max( (Math.pow(10, (passResolution+1))), 1 );var scaledValue = parseInt( (passValue * multiplier) );var rndDecider = (scaledValue % 10);if ( rndDecider >= 5 ) scaledValue = scaledValue + 10;scaledValue = parseInt((scaledValue / 10));if ( passResolution < 1 ) return scaledValue;return ( scaledValue / (Math.pow(10, passResolution)) );}function calculateLTV( form ) {var pForm = document.getElementById(form);var offerAmount = pForm.offer_amount.value.replace(/[\$,A-Za-z]+/g, "");var loanAmount = pForm.loan_amount.value.replace(/[\$,A-Za-z]+/g, "");if ( offerAmount.length > 0 && loanAmount.length > 0 ) {var ltv_percent = (loanAmount / offerAmount) * 100;pForm.ltv_percent.value = roundIt(ltv_percent,1);} else {pForm.ltv_percent.value = "0";}}function toggleLoginBox() {var box = document.getElementById('loginBox');if ( box.style.display=='block' ) {box.style.display='none';} else {box.style.display='block';}}