/**************************************************************************************/ /**************************************************************************************/ /**************************************************************************************/ /* HOMEPAGE SEARCH */ function valid_home_search(f) { f.elements['ddlLocality'].optional=false; f.elements['prop_price_max'].optional=true; f.elements['prop_type'].optional=false; f.elements['prop_usertype'].optional=true; if(!valid_Required(f)) return false; f.submit(); } /**************************************************************************************/ /**************************************************************************************/ /**************************************************************************************/ /* MEMBERS LOGIN */ function valid_members_login(f) { f.elements['user_email'].optional=false; f.elements['user_password'].optional=false; if(!valid_Required(f)) return false; if(!valid_Email(f.elements['user_email'].value)) return false; if(!valid_Password1(f.elements['user_password'].value)) return false; f.submit(); } /* MEMBERS PASSWORD REMINDER */ function valid_members_passremind(f) { if(f.elements['user_email'].value==''||f.elements['user_email'].value==f.elements['user_email'].defaultValue) { alert('Please enter your email address and click the \'Password Reminder\' link again.'); return false; } window.open('/members/members_passremind.asp?user_email='+f.elements['user_email'].value,'_self'); } /* MEMBERS REGISTER */ function valid_members_register(f) { f.elements['user_email'].optional=false; f.elements['user_firstname'].optional=false; f.elements['user_surname'].optional=false; f.elements['user_password'].optional=false; f.elements['user_confirm'].optional=false; f.elements['user_locality'].optional=true; f.elements['user_phone1'].optional=true; f.elements['user_gender'].optional=true; f.elements['user_yob'].optional=true; f.elements['user_maritalstatus'].optional=true; f.elements['user_occupationid'].optional=true; f.elements['user_salaryid'].optional=true; f.elements['user_newsletter'].optional=false; if(!valid_Required(f)) return false; if(!f.elements['user_phone1'].value==''){ nNumber = f.elements['user_phone1'].value; nNumber = nNumber.replace(' ',""); if(!r_validDigits.test(nNumber)) { alert('Please enter a valid telephone number'); return false; } } if(!valid_Email(f.elements['user_email'].value)) return false; if(!validatePwd(f.elements['user_password'])) return false; //== ADDED FOR QTR2006 - SH 20070802 //if(!valid_Password(f.elements['user_password'].value)) return false; // THIS IS THE OLD VERSION if(f.elements['user_password'].value!=f.elements['user_confirm'].value) { alert('Password confirmed incorrectly.'); return; } if(f.elements['action'].value=='add'&&!f.elements['user_tandc'].checked) { alert('You must accept the Terms & Conditions before continuing.'); return; } f.submit(); } /* MEMBERS EDIT AGENT */ function valid_members_agent_register(f) { f.elements['user_email'].optional=false; f.elements['user_firstname'].optional=false; f.elements['user_surname'].optional=false; f.elements['user_password'].optional=false; f.elements['user_confirm'].optional=false; f.elements['user_locality'].optional=true; f.elements['user_phone1'].optional=true; f.elements['user_companyname'].optional=false; f.elements['user_address1'].optional=false; f.elements['user_address2'].optional=true; f.elements['user_address3'].optional=true; f.elements['user_address4'].optional=true; f.elements['user_fax'].optional=true; if(!valid_Required(f)) return false; if(!f.elements['user_phone1'].value==''){ nNumber = f.elements['user_phone1'].value; nNumber = nNumber.replace(' ',""); if(!r_validDigits.test(nNumber)) { alert('Please enter a valid telephone number'); return false; } } if(!f.elements['user_fax'].value==''){ nFNumber = f.elements['user_fax'].value; nFNumber = nFNumber.replace(' ',""); if(!r_validDigits.test(nFNumber)) { alert('Please enter a valid fax number'); return false; } } if(!valid_Email(f.elements['user_email'].value)) return false; if(!valid_Password(f.elements['user_password'].value)) return false; if(f.elements['user_password'].value!=f.elements['user_confirm'].value) { alert('Password confirmed incorrectly.'); return; } f.submit(); } /* MEMBERS EDIT NOTIFICATIONS */ function valid_members_notifications(f) { f.submit(); } /* MEMBERS ADD/EDIT ADVERT */ function valid_members_adverts(f) { for(i=0;i -1) { errorMsg += "Your password cannot include a space.\n"; } if (!(fieldvalue.match(/\d/))) { errorMsg += "Your password must include at least one number.\n"; } //if (!(fieldvalue.match(/^[a-zA-Z]+/))) { // errorMsg += "Your password must start with at least one letter.\n"; //} if (!(fieldvalue.match(/[A-Z]/))) { errorMsg += "Your password must include at least one uppercase letter.\n"; } if (!(fieldvalue.match(/[a-z]/))) { errorMsg += "Your password must include one or more lowercase letters.\n"; } if (!(fieldvalue.match(/\W+/))) { errorMsg += "Your password must include at least one special character - #,@,%,!\n"; } if (!(fieldlength >= 7)) { errorMsg += "Your password must be at least 7 characters long.\n"; } if (errorMsg != ""){ msg = "Please correct the problem(s) with your password.\n\n"; errorMsg += alert(msg + errorMsg + "\n"); fieldname.focus(); return false; } return true; } function valid_admin_agents_images(f) { f.elements['image'].optional=false; if(!valid_Required(f)) return false; f.submit(); } function valid_admin_xml(f) { for(i=0;i "9"))) return false; } // All characters are numbers. return true; } function valid_Email(t) { if(!r_validEmail.test(t)) { alert('Please enter a valid email address'); return false; } return true; } function valid_Password(t) { if(t.length<6||t.length>20) { alert('Password must be between 6 and 20 characters long.'); return false; } if(!valid_Chars(t)) { alert('Passwords must contain alpha-numeric characters only.'); return false; } return true; } function valid_Password1(t) { if(t.length<6||t.length>20) { alert('Password must be between 6 and 20 characters long.'); return false; } return true; } function valid_Mobile(t) { if(t.length!=10||t.substr(0,2)!='08') { alert('Please enter a valid mobile number'); return false; } return true; } function valid_Required(f) { for(i=0;iparseInt(f.elements[x+'_max'].value)) { f.elements[x+'_max'].selectedIndex++; } } function checkMaxMin(f,x) { while(parseInt(f.elements[x+'_max'].value)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 -1) { errorMsg += "Your password cannot include a space.\n"; } if (!(fieldvalue.match(/\d/))) { errorMsg += "Your password must include at least one number.\n"; } //if (!(fieldvalue.match(/^[a-zA-Z]+/))) { // errorMsg += "Your password must start with at least one letter.\n"; //} if (!(fieldvalue.match(/[A-Z]/))) { errorMsg += "Your password must include at least one uppercase letter.\n"; } if (!(fieldvalue.match(/[a-z]/))) { errorMsg += "Your password must include one or more lowercase letters.\n"; } if (!(fieldvalue.match(/\W+/))) { errorMsg += "Your password must include at least one special character - #,@,%,!\n"; } if (!(fieldlength >= 7)) { errorMsg += "Your password must be at least 7 characters long.\n"; } if (errorMsg != ""){ msg = "Please correct the problem(s) with your password.\n\n"; errorMsg += alert(msg + errorMsg + "\n"); fieldname.focus(); return false; } return true; } /* MISC FUNCTIONS */ function print_page(s) { var qs='?'; if(s.indexOf('?')!=-1) qs='&'; window.open(s+qs+'print=on','_blank','toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=yes,resizable=yes,width=650,height=400'); } function preview_page(s) { var qs='?'; if(s.indexOf('?')!=-1) qs='&'; window.open(s+qs+'spot=true','_blank','toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=yes,resizable=no,width=792,height=500'); } function popup(s,x,y){ window.open(s,'popup'+(x*y),'toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=yes,resizable=yes,left=300,top=100,width='+x+',height='+y); } /* COOKIES */ /* name - name of the cookie value - value of the cookie [expires] - expiration date of the cookie (defaults to end of current session) [path] - path for which the cookie is valid (defaults to path of calling document) [domain] - domain for which the cookie is valid (defaults to domain of calling document) [secure] - Boolean value indicating if the cookie transmission requires a secure transmission * an argument defaults when it is assigned null as a placeholder * a null placeholder is not required for trailing omitted arguments */ function setCookie(name, value, expires, path, domain, secure) { var curCookie = name + "=" + escape(value) + ((expires) ? "; expires=" + expires.toGMTString() : "") + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : ""); document.cookie = curCookie; } /* name - name of the desired cookie return string containing value of specified cookie or null if cookie does not exist */ function getCookie(name) { var dc = document.cookie; var prefix = name + "="; var begin = dc.indexOf("; " + prefix); if (begin == -1) { begin = dc.indexOf(prefix); if (begin != 0) return null; } else begin += 2; var end = document.cookie.indexOf(";", begin); if (end == -1) end = dc.length; return unescape(dc.substring(begin + prefix.length, end)); } /* name - name of the cookie [path] - path of the cookie (must be same as path used to create cookie) [domain] - domain of the cookie (must be same as domain used to create cookie) path and domain default if assigned null or omitted if no explicit argument proceeds */ function deleteCookie(name, path, domain) { if (getCookie(name)) { document.cookie = name + "=" + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + "; expires=Thu, 01-Jan-70 00:00:01 GMT"; } } // date - any instance of the Date object // * hand all instances of the Date object to this function for "repairs" function fixDate(date) { var base = new Date(0); var skew = base.getTime(); if (skew > 0) date.setTime(date.getTime() - skew); }