//poll related function var ToShowPoll = 1 function SetNoShowPoll() { ToShowPoll = 0 } //check whether passed parameter is a valid number function notNumber(number) { number = number.toString() for (var i=0; i "9" || number.charAt(i) < "0") return true } return false } //format number as currency function formatCur(number, currencyCode) { if (number.toString() == "0") return currencyCode + " 0.00" if (number == "") return "on request" if (number < 0) { var sign = "-" number = -number } else var sign = "" number = Math.round(number * 100).toString() var decimal = number.substring(number.length-2, number.length) number = number.substring(0, number.length-2) var tmpNumber = "" for (var i=0; i=0; i--) { if (trimmedString.charAt(i) != " ") break } trimmedString = trimmedString.substring(0, i + 1) return trimmedString } //validate email address function notEmail(field) { var email = trim(field.value) if (email == "") return false var at = false var dot = false for (var i=0; i 5) return false alert("The e-mail you entered is not a valid e-mail address.") field.focus() return true } //validate ASCII Character Set function charCheck(field, message) { var txt = field.value for (var i=0; i= 128) { alert(message) field.focus() return true } } return false } //Checks if selected item has invalid value then select item with gotoIndex function checkInvalVal(sel, invalVal, gotoIndex) { if (sel.options[sel.selectedIndex].value == invalVal) { sel.selectedIndex = gotoIndex } }//remote scripting object constructor function remScript(url, callBack, containerName, objName) { if (typeof(containerName) == "undefined") containerName = "rs" if (typeof(objName) == "undefined") objName = "objRS" this.containerName = containerName this.objName = objName this.url = url this.callBack = callBack this.busy = false this.createContainer = createContainer this.getData = getData } //create container for remote data function createContainer(blankSrc) { if (typeof(blankSrc) == "undefined") { if (typeof(affID) == "undefined") blankSrc = "/blank.htm" else blankSrc = "about:blank" } if (document.layers) document.write("") else document.write("") } //load container with remote data function getData(func, args) { var d = new Date() var params = "f=" + escape(func) + "&o=" + escape(this.objName) + "&u=" + d.getTime() for (var i=0; ipreservedOpt; i--) ctl.options[i] = null } //populate and set select boxes function populateDates(frm, startBlank) { var preservedOpt if (startBlank) preservedOpt = 0 else preservedOpt = -1 populateDay(frm.inDay, preservedOpt) populateMonth(frm.inMonth, preservedOpt) populateYear(frm.inYear, preservedOpt) populateDay(frm.outDay, preservedOpt) populateMonth(frm.outMonth, preservedOpt) populateYear(frm.outYear, preservedOpt) setDefDates(frm, startBlank) } //populate day select box function populateDay(ctl, preservedOpt) { clearSelect(ctl, preservedOpt) var newText for (var i=1+preservedOpt; i<32+preservedOpt; i++) { newText = i-preservedOpt if (newText < 10) newText = "0" + newText ctl[i] = new Option(newText, i-preservedOpt) } } //populate month select box function populateMonth(ctl, preservedOpt) { var monthArray = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec") clearSelect(ctl, preservedOpt) for (var i=1+preservedOpt; i<13+preservedOpt; i++) ctl[i] = new Option(monthArray[i-1-preservedOpt], i-preservedOpt) } //populate year select box function populateYear(ctl, preservedOpt) { clearSelect(ctl, preservedOpt) for (var i=1+preservedOpt; i<4+preservedOpt; i++) ctl[i] = new Option(i+curYear-1-preservedOpt, i+curYear-1-preservedOpt) } //set default dates function setDefDates(frm, startBlank) { var defInDay, defInMonth, defInYear, defOutDay, defOutMonth, defOutYear var noCookie = true //extract dates from cookie var cookieArray = document.cookie.split("|") for (var i=0; i 2160000000) { //25 days in milliseconds alert("Your period of stay should be not longer than 25 nights.\n\nIf you wish to book for more than 25 nights,\nplease send us an e-mail with your request.") frm.outDay.focus() return false } if (checkoutDate - checkinDate <= 0) { alert("The Checkout Date should be greater than the Checkin Date.") frm.outDay.focus() return false } //save dates to cookie setDatesCookie(getVal(frm.inDay), getVal(frm.inMonth), getVal(frm.inYear), getVal(frm.outDay), getVal(frm.outMonth), getVal(frm.outYear)) return true } //save dates to cookie function setDatesCookie(inDay, inMonth, inYear, outDay, outMonth, outYear) { var arrCookie = document.cookie.split("|") var i var defCountry = "" var defCity = "" var defSuburb = "" for (i=0; i 0 && trim(frm.rateTo.value).length > 0) { if (parseInt(frm.rateFrom.value) > parseInt(frm.rateTo.value)) { alert("The To Rate should be not less than the From Rate.") frm.rateTo.focus() return } } //check that at least one star rating is selected if (!(frm.star3.checked || frm.star4.checked || frm.star5.checked)) { alert("Please select at least one Star Rating.") frm.star5.focus() return } } //save selected country, city and suburb to cookie document.cookie = "|SearchEng|" + getText(frm.country) + "|" + getText(frm.city) + "|" + getText(frm.suburb) + "|" + ";path=/" //check dates and submit the form if (validateDates(frm)) frm.submit() } //prosess key-press event in hotel name text-box function keyPressed(frm, pressedKeyCode) { if (pressedKeyCode == 13) submitForm(frm, "Name") } //set weekdays function setWkd(frm) { var checkinDate = new Date(getVal(frm.inYear), getVal(frm.inMonth) - 1, getVal(frm.inDay)) var checkoutDate = new Date(getVal(frm.outYear), getVal(frm.outMonth) - 1, getVal(frm.outDay)) frm.inWkd.value = "(" + wkdArray[checkinDate.getDay()] + ")" frm.outWkd.value = "(" + wkdArray[checkoutDate.getDay()] + ")" var numNights = Math.round((checkoutDate - checkinDate) / 86400000) if (Math.abs(numNights) == 1) numNights += " night" else numNights += " nights" frm.lenStay.value = numNights }