/***** * Copyright © FASTBOOKING 2000-2003 * */ var FBRESA = "http://www.fastbookings.biz/DIRECTORY/"; // standard booking function function hhotelPTC(cname, lg, codeprice, codetrack, cluster) { hhotelResa(cname, lg, codeprice, "", "", codetrack, cluster, "", "") } // standard promotion function function hhotelPromo(cname, lg, theme) { hhotelResa(cname, lg, "DYNPROMO", "", "", "", "", theme, "") } // reservation page WITHOUT the individual access function hhotelNegociated(cname, lg, codeprice, codetrack, cluster) { hhotelResa(cname, lg, codeprice, "", "", codetrack, cluster, "", "negociated=1"); } // standard search availabilities in a group function hhotelSearchGroup(cluster, lg, price, nights, title) { hhotelSearch(cluster, lg, price, nights, title, "", ""); } // standard search availabilities in a group for a partner function hhotelSearchPartner(cluster, lg, price, codetrack, title) { if (codetrack != "") args = "&from="+codetrack; else args = ""; hhotelSearch(cluster, lg, price, "", title, "", args); } // search by giving the initial date function hhotelSearchPriceDate(cluster, price, nights, title, firstdate) { // firstdate : format "YYMMDD" var args=""; if (firstdate != "") args = "FirstDate="+firstdate; hhotelSearch(cluster, "", price, nights, title, "", args); } // search availabilities for selected promotions function hhotelSearchPromo(cluster, lg, theme) { hhotelSearch(cluster, lg, "", "", "", theme, ""); } // search availabilities with Extra Field function hhotelSearchExtra(cluster, lg, price, codetrack, extratitle, extraval, extrashow) { var args = "Extrafield=" + escape(extratitle) + ";" + extraval + ";" + extrashow; if (codetrack != "") args += "&from="+codetrack; hhotelSearch(cluster, lg, price, "", "", "", args); } // go to the cancel reservation page function hhotelcancel(cname,lg) { var waction = FBRESA + "cancel.phtml?state=77&Hotelnames="+cname; if (lg != "") waction += "&langue="+lg; window.open(waction,"reservation","toolbar=no,width=400,height=350,menubar=no,scrollbars=yes,resizable=yes,alwaysRaised=yes"); } // go to the extract reservation page function hhotelExtract(cname, lg) { var waction = FBRESA + "getresa.phtml?Hotelnames="+cname+"&langue="+lg; window.open(waction, 'getresa', 'toolbar=no,width=700,height=300,menubar=no,scrollbars=yes,resizable=yes,alwaysRaised=yes'); return false; } // check interface function hhotelcheckrates(cname, lg) { var waction = FBRESA + "crs.phtml?clusterName="+cname; if (lg != "") waction += "&langue="+lg; waction += "&checkPromo=1"; window.open(waction,"search","toolbar=no,width=800,height=550,menubar=no,scrollbars=yes,resizable=yes,alwaysRaised=yes"); } // Main standard reservation function function hhotelResa(cname, lg, codeprice, firstroom, firstdate, codetrack, cluster, theme, args) { var waction = FBRESA+"preresa.phtml?Hotelnames="+cname; if (lg != "") waction += "&langue="+lg; if (firstroom != "") { waction += "&FirstRoomName="+firstroom; if (codeprice == "") codeprice = "DIRECT"; } if (firstdate != "") { waction += "&FirstDate="+firstdate; if (codeprice == "") codeprice = "DIRECT"; } if (codeprice != "") waction += "&FSTBKNGCode="+codeprice; if (codetrack != "") waction += "&FSTBKNGTrackLink="+codetrack; if (cluster != "") waction += "&clustername="+cluster; if (theme != "") waction += "&theme="+theme; if (args != "" && (args.indexOf("=")!= -1) ) waction += "&"+args; waction += "&HTTP_REFERER="+escape(document.location.href); window.open(waction,"reservation","toolbar=no,width=400,height=350,menubar=no,scrollbars=yes,resizable=yes,alwaysRaised=yes"); } // Main Search function function hhotelSearch(cluster, lg, price, nights, title, theme, args) { var waction = FBRESA + "crs.phtml?clusterName="+cluster; if (lg != "") waction += "&langue="+lg; if (price != "") waction += "&FSTBKNGCode="+price; if (nights != "") waction += "&nights="+nights; if (title != "") waction += "&title="+escape(title); if (theme != "") waction += "&theme="+theme; if (args != "" && (args.indexOf("=")!= -1) ) waction += "&"+args; window.open(waction,"search","toolbar=no,width=800,height=550,menubar=no,scrollbars=yes,resizable=yes,alwaysRaised=yes"); } // Main Search function for Multi Codes function hhotelSearchMultCode(cluster, lg, clecode, title, codetrack) { var waction = FBRESA + "crs.phtml?clusterName="+cluster; if (lg != "") waction += "&langue="+lg; if (clecode != "") waction += "&AccessCode="+clecode; if (title != "") waction += "&title="+escape(title); if (codetrack != "") waction += "&FSTBKNGTrackLink="+codetrack; waction += "&crossSelling=NO"; // CROSS SELLING DESACTIVATED window.open(waction,"search","toolbar=no,width=800,height=550,menubar=no,scrollbars=yes,resizable=yes,alwaysRaised=yes"); } // Main Search function for Cross Selling function hhotelSearchCrossSell(cluster, lg, codetrack, crossSelling) { var waction = FBRESA + "crs.phtml?clusterName="+cluster; if (lg != "") waction += "&langue="+lg; if (codetrack != "") waction += "&FSTBKNGTrackLink="+codetrack; if (crossSelling != "") waction += "&crossSelling="+crossSelling; window.open(waction,"search","toolbar=no,width=800,height=550,menubar=no,scrollbars=yes,resizable=yes,alwaysRaised=yes"); } // MAIN AVAILABILITY CHECK function hhotelDispopriceFHP(cname, lg, codetrack, year, month, day, nights, currency) { var waction = FBRESA+"dispoprice.phtml?clusterName="+cname+"&Hotelnames="+cname; if (lg != "") waction += "&langue="+lg; if (codetrack != "") waction += "&FSTBKNGTrackLink="+codetrack; if (year != "") waction += "&fromyear="+year; if (month != "") waction += "&frommonth="+month; if (day != "") waction += "&fromday="+day; if (nights != "") waction += "&nbdays="+nights; if (currency != "") waction += "&CurrencyLabel="+currency; waction += "&showPromotions=3"; window.open(waction,"reservation","toolbar=no,width=750,height=600,menubar=no,scrollbars=yes,resizable=yes,alwaysRaised=yes"); } /////////////////////////////////////////////////////////////////////////////////////// // Form functions // Simple form validation (used for compatibility issues) function hhotelDispoprice(myForm) { hhotelFormValidation(myForm, 0); } // Form validation with control function hhotelFormValidation(myForm, mandatoryCode){ if (mandatoryCode == 1 && myForm.AccessCode.value == "") { alert("You must type in your code ID"); return (false); } var languetype = typeof myForm.action; myForm.action = FBRESA + "dispoprice.phtml"; window.open('','dispoprice', 'toolbar=no,width=800,height=550,menubar=no,scrollbars=yes,resizable=yes'); myForm.submit(); return (true); } // Form: update the selected hotel name function hhotelFormUpdateHotelnames(myForm) { menuNum = myForm.HotelList.selectedIndex; if (menuNum == null) return; myForm.Hotelnames.value = myForm.HotelList.options[menuNum].value; } // Form: show the cancel page function hhotelFormCancel(myForm){ var CName = myForm.Hotelnames.value; var languetype = typeof myForm.langue; var langue; if (languetype == "undefined") langue = ""; else langue = myForm.langue.value; if (CName == null || CName == 'All' || CName == ''){ alert('Please select a hotel first'); return (false); } return hhotelcancel(CName, langue); } // Form: show the extract page function hhotelFormExtract(myForm) { var CName = myForm.Hotelnames.value; var languetype = typeof myForm.langue; var langue; if (languetype == "undefined") langue = ""; else langue = myForm.langue.value; if (CName == null || CName == 'All' || CName == ''){ alert('Please select a hotel first'); return (false); } return hhotelExtract(CName, langue); } // Form: show languages function hhotelShowLang(lang) { hhotelShowLang__(this.document, lang); } function hhotelShowLangOpener(lang) { hhotelShowLang__(window.opener.document, lang); window.close(); } function hhotelShowLang__(mydoc, lang) { mydoc.idForm.langue.value=lang; var imgLang = hhotelLang2Img(lang); if (imgLang != "") { var formFlag = mydoc.selLgFlag; if (formFlag != null) mydoc.selLgFlag.src= "fastbooking/flags/"+imgLang+".gif"; var formFlag = mydoc.selLgTxt; if (formFlag != null) mydoc.selLgTxt.src= "fastbooking/flags/"+imgLang+"lg.gif"; } } // FastBooking language and image code var FBLangCode = new Array ( "uk", "france", "germany", "spain", "portuguese", "italy", "nether", "russian", "dansk", "svensk", "islensk", "norsk", "turk", "hungria", "greek", "arab", "china", "coreen", "japan","croate","czech","poland"); var FBLangImg = new Array ( "grandbret", "france", "germany", "spain", "portuguese", "italy", "nether", "russia", "denmark", "sweeden", "iceland", "norway", "turkey", "hungary", "greek", "arab", "china", "coreen", "japan","croate","czech","poland"); function hhotelLang2Img(lang) { for(i = 0; i < FBLangCode.length; i++) { if (FBLangCode[i] == lang) break; } return FBLangImg[i]; } function hhotelLangSelector() { window.open('fastbooking/flags/langSelector.html', '', 'width=330,height=180'); } var langcodes = new Array("en", "uk", "fr", "france", "de", "germany", "es", "spain ", "pt", "portuguese", "it", "italy", "nl", "nether", "ja", "japan ", "ko", "coreen", "zh", "china", "ar", "arab", "ru", "russian", "tr", "turk", "el", "greek", "hu", "hungria", "da", "dansk", "sv", "svensk", "is", "islensk", "no", "norsk", "hr", "croate", "cs", "czech", "pl", "poland", "iw", "hebrew"); function selectLang() { if(navigator.appName == "Microsoft Internet Explorer") UL = navigator.userLanguage.substring(0, 2); else if(navigator.appName == "Netscape") UL = navigator.language; else return; for(i = 0; i < langcodes.length; i += 2) if(UL == langcodes[i]) break; lang = (i < langcodes.length) ? langcodes[i+1] : "uk"; hhotelShowLang(lang); } // Form: show arrival date function start() { var nbm = [ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ]; jour = 7; MD=new Date(); nday=MD.getDate(); aday=MD.getDay(); amois=MD.getMonth(); ayear=takeYear(MD); nday += jour; if(nday > nbm[amois]) { nday -= nbm[amois]; amois++; if(amois > 11) { ayear++; amois = 0; } } indexDay = nday-1; indexMois = amois; indexYear = ayear-2007; if(indexDay < 0 || indexDay > 30) indexDay = 0; if(indexMois < 0 || indexMois > 11) indexMois = 0; if(indexYear < 0 || indexYear > 1) indexDay = 0; document.idForm.fromday.selectedIndex = indexDay; document.idForm.frommonth.selectedIndex = indexMois; document.idForm.fromyear.selectedIndex = indexYear; } function takeYear(theDate) { x = theDate.getYear(); var y = x % 100; y += (y < 38) ? 2000 : 1900; return y; }