/* Copyright (c) 1995-2008 Choice Hotels International, Inc. All Rights Reserved. */
function invalidAIChars(inputStr){var badChar=false;var len=inputStr.length;var i=0;for(;i<len;i++){if(inputStr.substring(i,i+1)=='|')badChar=true;if(inputStr.substring(i,i+1)=='`')badChar=true;if(inputStr.substring(i,i+1)=='_')badChar=true;if(inputStr.substring(i,i+1)=='\\')badChar=true;if(inputStr.substring(i,i+1)=='~')badChar=true;if(inputStr.substring(i,i+1)=='^')badChar=true}return badChar};function removeChars(inputStr){inputStr=inputStr.replace(/\r/gi," ");inputStr=inputStr.replace(/\n/gi," ");return inputStr};function removeSpaces(inputStr){var tmp="";inputStr=''+inputStr;splitstring=inputStr.split(" ");for(i=0;i<splitstring.length;i++)tmp+=splitstring[i];return tmp};function invalidFreeText(inputStr){var badChar=false;var len=inputStr.length;var i=0;for(;i<len;i++){if(inputStr.substring(i,i+1)=='|')badChar=true;if(inputStr.substring(i,i+1)=='`')badChar=true;if(inputStr.substring(i,i+1)=='_')badChar=true;if(inputStr.substring(i,i+1)=='\\')badChar=true;if(inputStr.substring(i,i+1)=='~')badChar=true;if(inputStr.substring(i,i+1)=='^')badChar=true;if(inputStr.substring(i,i+1)=='\"')badChar=true}return badChar};function validInputChars(inputStr,numbersValid){var len=inputStr.length;var badChar=true;var i=0;var ch='';for(;i<len;i++){badChar=true;ch=inputStr.charAt(i);if(ch>='a'&&ch<='z')badChar=false;else if(ch>='A'&&ch<='Z')badChar=false;else if(ch>='Ã')badChar=false;else if((ch=='(')||(ch==')'))badChar=false;else if(ch=='\''&&i!=0)badChar=false;else if(ch=='-'&&i!=0)badChar=false;else if(ch==' '&&i!=0)badChar=false;else if(ch==','&&i!=0)badChar=false;else if(ch=='.'&&i!=0)badChar=false;else if(ch=='-'&&i!=0)badChar=false;else if(ch=='&'&&i!=0)badChar=false;if(numbersValid){if(ch>='0'&&ch<='9')badChar=false}if(badChar)return false}return true};function validCityChars(inputStr,numbersValid){var len=inputStr.length;var badChar=true;var i=0;var ch='';for(;i<len;i++){badChar=true;ch=inputStr.charAt(i);if(ch>='a'&&ch<='z')badChar=false;else if(ch>='A'&&ch<='Z')badChar=false;else if(ch>='Ã')badChar=false;else if(ch=='\''&&i!=0)badChar=false;else if(ch=='.'&&i!=0)badChar=false;else if(ch=='-'&&i!=0)badChar=false;else if(ch==' '&&i!=0)badChar=false;else if(ch==','&&i!=0)badChar=false;if(numbersValid){if(ch>='0'&&ch<='9')badChar=false}if(badChar)return false}return true};function validAddressChars(inputStr){var len=inputStr.length;var badChar=true;var i=0;var ch='';for(;i<len;i++){badChar=true;if(inputStr.charAt(i)=='/'){if(i!=0)badChar=false}else {ch=inputStr.charAt(i);if(ch>='a'&&ch<='z')badChar=false;else if(ch>='A'&&ch<='Z')badChar=false;else if(ch>='Ã')badChar=false;else if(ch=='\''&&i!=0)badChar=false;else if(ch=='-'&&i!=0)badChar=false;else if(ch==' '&&i!=0)badChar=false;else if(ch==','&&i!=0)badChar=false;else if(ch=='.'&&i!=0)badChar=false;else if(ch=='-'&&i!=0)badChar=false;else if(ch=='/'&&i!=0)badChar=false;else if(ch=='#')badChar=false;else if(ch>='0'&&ch<='9')badChar=false}if(badChar)return false}return true};function validChars(inputStr){var len=inputStr.length;var badChar=true;var ch='';var i=0;for(;i<len;i++){badChar=true;ch=inputStr.charAt(i);if(ch>='a'&&ch<='z')badChar=false;else if(ch>='A'&&ch<='Z')badChar=false;else if(ch>='Ã')badChar=false;if(badChar)return false}return true};function validNumbers(inputStr){var len=inputStr.length;var badChar=true;var ch='';var i=0;for(;i<len;i++){badChar=true;ch=inputStr.charAt(i);if(ch>='0'&&ch<='9'){badChar=false}if(badChar)return false}return true};function validCCNumber(inputStr){var len=inputStr.length;var badChar=true;var ch='';var i=0;for(;i<len;i++){badChar=true;ch=inputStr.charAt(i);if(ch>='0'&&ch<='9'){badChar=false}if(ch=='*'){badChar=false}if(badChar)return false}return true};function validConfNumber(inputStr){if(inputStr==null){return false}inputStr=removeSpaces(inputStr);if(inputStr.length<5){return false}var len=inputStr.length;var badChar=true;var ch='';var i=0;for(;i<len;i++){badChar=true;ch=inputStr.charAt(i);if(ch=='-')badChar=false;if(ch>='a'&&ch<='z')badChar=false;else if(ch>='A'&&ch<='Z')badChar=false;else if(ch>='0'&&ch<='9')badChar=false;if(badChar)return false}return true};function validRate(inputStr){var len=inputStr.length;var badChar=true;var ch='';var i=0;for(;i<len;i++){badChar=true;ch=inputStr.charAt(i);if(ch>='0'&&ch<='9')badChar=false;else if(i!=0&&(ch=='.'||ch==','))badChar=false;else if(i==0&&ch=='$')badChar=false;if(badChar)return false}return true};function validEmailChars(inputStr){var len=inputStr.length;var badChar=true;var ch='';var i=0;var foundAt=false;for(;i<len;i++){badChar=true;ch=inputStr.charAt(i);if(ch=='.'){if(inputStr.indexOf('.',i+1)-i==1){return false}}if(ch=='@'){if(foundAt||(i==0))return false;foundAt=true}else {if(!((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z')||(ch>='0'&&ch<='9')||(ch=='.')||(ch=='_')||(ch=='-')))return false}}return true};function validFirstName(firstname){if(firstname.length>0){if(!validInputChars(firstname,false))return false}else return false;return true};function validLastName(lastname){if(lastname.length>1){if(!validInputChars(lastname,false))return false}else return false;return true};function validAddress(address){if(address.length>0){if(!validAddressChars(address))return false}else return false;return true};function validCity(city){var allownumbers=false;if(city.substring(0,6).toUpperCase()=='DUBLIN'){allownumbers=true}if(city.length>0){if(!validCityChars(city,allownumbers))return false}else return false;return true};function isValidPostalCode(zip,country){zip=zip.trim();var re;if(country=='US'){re=new RegExp("^\\d{5}(\\-?\\d{4})?$")}else if(country=='CA'){re=new RegExp("^[A-Z,a-z]\\d{1}[A-Z,a-z]( ||-)\\d{1}[A-Z,a-z]\\d{1}$")}else if(country=='PG'){re=new RegExp("^\\d{3}$")}else if(country=='AU'||country=='NZ'){re=new RegExp("^\\d{4}$")}else if(country=='SG'){re=new RegExp("^\\d{6}$")}else if(country=='BE'||country=='CZ'||country=='FR'||country=='DE'||country=='IT'||country=='PT'||country=='ES'||country=='CH'||country=='GB'||country=='AD'||country=='AT'||country=='BY'||country=='BA'||country=='BG'||country=='HR'||country=='CY'||country=='GR'||country=='HU'||country=='LI'||country=='LU'||country=='MK'||country=='MT'||country=='MD'||country=='MC'||country=='ME'||country=='NL'||country=='PL'||country=='RO'||country=='RU'||country=='SM'||country=='RS'||country=='SI'||country=='UA'||country=='GF'||country=='PF'||country=='GP'||country=='MQ'||country=='YT'||country=='NC'||country=='RE'||country=='BL'||country=='MF'||country=='PM'||country=='SK'||country=='TR'||country=='WF'||country=='VA'||country=='MX'){re=new RegExp("^([A-Z,a-z,0-9, ,-]){1,10}$")}else {re=new RegExp("^([A-Z,a-z,0-9, ,-]){0,10}$")}return re.test(zip)};String.prototype.trim=function(){return this.replace(/^\s*|\s*$/g,'')};function validEmail(email){if(email.length>0){while(''+email.charAt(email.length-1)==' '){email=email.substring(0,email.length-1)}if(!validEmailChars(email))return false;var atpos=email.indexOf("@");var dotpos=email.lastIndexOf(".");var lastpos=email.length-1;var firstchar=email.charAt(0);if((lastpos-atpos<3||lastpos-dotpos<2||dotpos-atpos<=1)||(email.indexOf("@")==-1)||(firstchar=="_")||(firstchar=="-"))return false}return true};function validURLChars(inputStr){var len=inputStr.length;var ch='';var i=0;for(;i<len;i++){ch=inputStr.charAt(i);if(ch==' ')return false}return true};function validURL(url){if(url.length>0){while(''+url.charAt(url.length-1)==' '){url=url.substring(0,url.length-1)}if(!validURLChars(url))return false;var urlRegex=/(((http?)|(https?)|(ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i;if(urlRegex.test(url))return true}return false};function validPhone(phoneNbr){var len=phoneNbr.length;var badChar=true;var i=0;var ch='';for(;i<len;i++){badChar=true;ch=phoneNbr.charAt(i);if(!validInputChars(ch,false))badChar=false;else if(ch>='0'&&ch<='9')badChar=false;else if(ch>='a'&&ch<='z')badChar=false;else if(ch>='A'&&ch<='Z')badChar=false;else if(ch>='Ã')badChar=false;if((!validNumbers(ch))&&(i==0))badChar=true;if((ch=='(')||(ch==')')||(ch=='+')||(ch=='.')||(ch=='-')||(ch==' ')||(ch=='/'))badChar=false;if(badChar)return false}return true};function isANumber(nbr){var len=nbr.length;var ch='';var i=0;if(len==0){return false}for(;i<len;i++){ch=nbr.substring(i,i+1);if(ch<'0'||ch>'9')return false}return true};function ignoreSpaces(string){var temp="";string=''+string;splitstring=string.split(" ");for(i=0;i<splitstring.length;i++)temp+=splitstring[i];return temp};function compareTodaysDate(given_year,given_month,given_day){today=new Date();this_day=today.getDate();this_month=today.getMonth()+1;this_year=today.getFullYear();if(eval(given_year)<eval(this_year)){return false}else if((eval(given_year)==eval(this_year))&&(eval(given_month)<eval(this_month))){return false}else if((eval(given_year)==eval(this_year))&&(eval(given_month)==eval(this_month))&&(eval(given_day)<eval(this_day))){return false}return true};function compareStartToEndDate(start_year,start_month,start_day,end_year,end_month,end_day){if(eval(end_year)<eval(start_year)){return false}else if((eval(end_year)==eval(start_year))&&(eval(end_month)<eval(start_month))){return false}else if((eval(end_year)==eval(start_year))&&(eval(end_month)==eval(start_month))&&(eval(end_day)<eval(start_day))){return false}return true};function compareStartToEndDateExclusive(start_year,start_month,start_day,end_year,end_month,end_day){if(eval(end_year)<eval(start_year)){return false}else if((eval(end_year)==eval(start_year))&&(eval(end_month)<eval(start_month))){return false}else if((eval(end_year)==eval(start_year))&&(eval(end_month)==eval(start_month))&&(eval(end_day)<=eval(start_day))){return false}return true};function disableCC(guarantee){if(guarantee.value=='TA'||guarantee.value=='4P'||guarantee.value=='6P'){document.GuestData.cc_code.disabled=true;document.GuestData.cc_num.disabled=true;document.GuestData.exp_month.disabled=true;document.GuestData.exp_year.disabled=true}else {document.GuestData.cc_code.disabled=false;document.GuestData.cc_num.disabled=false;document.GuestData.exp_month.disabled=false;document.GuestData.exp_year.disabled=false}};function textLimiter(field,maxlimit){if(field.value.length>maxlimit){field.value=field.value.substring(0,maxlimit)}};function clearAllFields(form_flds){for(var i=0;i<form_flds.length;i++){var e=form_flds.elements[i];if((e.type=='text')||(e.type=='select-one')||(e.type=='textarea'))e.value=""}};function validPrivacyProfilePhone(phoneNbr){var len=phoneNbr.length;var badChar=true;var i=0;var ch='';for(;i<len;i++){badChar=true;ch=phoneNbr.charAt(i);if(ch>='0'&&ch<='9')badChar=false;if((ch=='(')||(ch==')')||(ch=='+')||(ch=='-'))badChar=false;if(badChar)return false}return true};function validPropertyCode(inputStr){var re=new RegExp("^[A-Z,a-z]{2}[A-Z,a-z,0-9][0-9]{2}$");inputStr=inputStr.trim();return re.test(inputStr)};function isValidCPCountry(country){var validCountries=new Array("US","VI","PR","CA","IE","MX","BE","CZ","FR","DE","IT","PT","ES","CH","GB","AL","AD","AT","BY","BA","BG","HR","CY","GR","HU","LI","LU","MK","MT","MD","MC","ME","NL","PL","RO","RU","SM","RS","SI","UA","VA","GF","PF","GP","MQ","YT","NC","RE","BL","MF","PM","SK","TR","WF","AU","NZ","PG","SG","FJ");var len=validCountries.length;var isValid=false;for(var i=0;i<=len;i++){if(country==validCountries[i]){isValid=true;break}}return isValid};function isValidCounty(county,country){var country_in_county_country_code=county.substring(county.length-2,county.length);if((country=='IE'||country=='AL')&&country!=country_in_county_country_code){return false}return true};