function updateKidsAge(fd, prefix) {
try {
if (0 == fd.value) {
$("wct_kids_age").style.display = "none";
} else {
$("wct_kids_age").style.display = "inline";
}
for (i = 1; i <= 4; i++) {
if(prefix){
var kidId = prefix + i;
} else {
var kidId = "wct_kid_" + i;
}
if (i <= fd.value) {
$(kidId).style.display = "inline";
} else {
$(kidId).style.display = "none";
}
}
}
catch(ex){}
}
function wctCodeUpdateRates(qs,invSource,ratePlan,roomType)
{
var soCode = document.getElementById('soCode').value;
if(soCode)
{
wctGetRates(qs,invSource,ratePlan,roomType,soCode);
}
else
{
alert('Please provide discount code first.');
}
}
function wctGetRates(qs,invSource,ratePlan,roomType,soCode)
{
var bookDiv = $("bookingDiv");
//var bookDiv = $("box_details");
var url = '/wayntravels.html?' + qs + '&invSource=' + invSource;
url += '&ratePlan=' + ratePlan;
url += '&roomType=' + roomType;
url += '&soCode=' + soCode;
//alert(soCode + ' ' + ratePlan + ' ' + roomType);
var tmpMessage = '<div style="height:160px;padding-top:60px;" align="center"><img src="'+appproxypath+'images/loading.gif"><div style="margin:5px;"><b>Please wait whilst checking rate...</b></div></div>';
bookDiv.innerHTML = tmpMessage;
var bookdiv2 = $("newResultsContainer");
bookdiv2.innerHTML = '';
try {
xmlRequest = new Ajax.Request (
url,
{
method : 'GET',
onSuccess : function ( resp ) {
changeDestContentAll(false);
//alert(resp.responseText);
responseXml = resp.responseXML;
for (var i = responseXml.firstChild; i != null; i = i.nextSibling) {
for (var j = i.firstChild; j != null; j = j.nextSibling) {
if (j.nodeValue != null && j.nodeValue != '') {
bookDiv.innerHTML = "";
bookDiv.innerHTML = j.nodeValue;
}
}
}
},
onFailure : function ( resp ) {
changeDestContentAll(true);
//TODO -- change messge
//alert(resp.responseText);
bookDiv.innerHTML = "<center><b>Sorry, we're unable to load data at the moment</b></center>";
return;
},
onException: function ( resp ) {
changeDestContentAll(true);
//TODO -- change messge
//alert(resp.responseText);
bookDiv.innerHTML = "<center><b>Sorry we're unable to load data at the moment</b></center>";
return;
}
}
);
}
catch(err){}
}
function wctCheckAvailability(form) {
var kids_values = new Array;
var kids_indexes = new Array;
var url = document.location + '';
var qstring = url.split('?')[1];
var hotelsChildrenAge = new Array;
if(qstring){
var querystring = qstring.split(/\&/);
for (var i=0; i<querystring.length; i++){
if(querystring[i].split('=')[0] == 'children') {
hotelsChildren = querystring[i].split('=')[1];
}
if(querystring[i].split('=')[0] == 'children_age') {
hotelsChildrenAge = querystring[i].split('=')[1].split(',');
}
}
}
var xmlRequest = null;
var wctId;
if (form.name == "WCTform" || form.name == "WCTRateRulesForm") {
var dStart = $('wct_check_in').value.split('-');
var dEnd = $('wct_check_out').value.split('-');
var _nights = (Date.parse(dEnd[0]+'/'+dEnd[1]+'/'+dEnd[2]) - Date.parse(dStart[0]+'/'+dStart[1]+'/'+dStart[2]))/86400000;
$("wct_nights").value = _nights;
wctId = form.wct_id.value;
var checkIn = form.wct_check_in.value;
var checkOut = form.wct_check_out.value;
$("wct_check_in3Input").value = $("wct_check_inInput").value
$("wct_check_in3").value = $("wct_check_in").value
$("wct_check_out3Input").value = $("wct_check_outInput").value
$("wct_check_out3").value = $("wct_check_out").value
var rooms = form.wct_rooms.selectedIndex;
var adults = form.wct_adults.selectedIndex;
var kids = form.wct_kids.selectedIndex;
var curr = form.wct_currency.selectedIndex;
var rooms_value = form.wct_rooms.value;
var adults_value = form.wct_adults.value;
var kids_value = form.wct_kids.value;
var curr_value = form.wct_currency.value;
kids_values.push(form.wct_child_1.value);
kids_values.push(form.wct_child_2.value);
kids_values.push(form.wct_child_3.value);
kids_values.push(form.wct_child_4.value);
}
if(form.name == "WCTform2") {
wctId = form.wct_id2.value;
var checkIn = form.wct_check_in2.value;
var checkOut = form.wct_check_out2.value;
var rooms = form.wct_rooms.selectedIndex;
var adults = form.wct_adults.selectedIndex;
var kids = form.wct_kids.selectedIndex;
var curr = form.wct_currency.selectedIndex;
var rooms_value = form.wct_rooms.value;
var adults_value = form.wct_adults.value;
var kids_value = form.wct_kids.value;
var curr_value = form.wct_currency.value;
kids_values.push(form.wct_child_1.value);
kids_values.push(form.wct_child_2.value);
kids_values.push(form.wct_child_3.value);
kids_values.push(form.wct_child_4.value);
}
if(form.name == "WCTform3") {
wctId = $("wct_id3").value;
var checkIn = form.wct_check_in3.value;
var checkOut = form.wct_check_out3.value;
if(checkIn == ''){
var cIn = $('wct_check_in3Input').value.split('/');
checkIn = cIn[2] + '-' + cIn[1] + '-' + cIn[0];
}
if(checkOut == ''){
var cOut = $('wct_check_out3Input').value.split('/');
checkOut = cOut[2] + '-' + cOut[1] + '-' + cOut[0];
}
var dStart = checkIn.split('-');
var dEnd = checkOut.split('-');
var _nights = (Date.parse(dEnd[0]+'/'+dEnd[1]+'/'+dEnd[2]) - Date.parse(dStart[0]+'/'+dStart[1]+'/'+dStart[2]))/86400000;
var rooms = form.wct_rooms3.selectedIndex;
var adults = form.wct_adults3.selectedIndex;
var kids = form.wct_kids3.selectedIndex;
var curr = form.wct_currency3.selectedIndex;
var rooms_value = form.wct_rooms3.value;
var adults_value = form.wct_adults3.value;
var kids_value = form.wct_kids3.value;
var curr_value = form.wct_currency3.value;
if(hotelsChildrenAge){
kids_values = hotelsChildrenAge;
} else {
kids_values.push(0);
}
}
var url = form.action;
url += "&wct_id=" + wctId;
url += "&check_in=" + checkIn;
url += "&check_out=" + checkOut;
url += "&rooms=" + rooms_value;
url += "&adults=" + adults_value;
url += "&kids=" + kids_value;
url += "&curr=" + curr_value;
for (i = 1; i < kids_values.length + 1; i++) {
url += "&age" + i + "=" + kids_values[i-1];
}
if ( form.wct_nights != null ) {
url += "&nights=" + form.wct_nights.value;
}else if (form.wct_nights2 != null ){
url += "&nights=" + form.wct_nights2.value;
}
try {
var fromToday = (Date.parse(dStart[0]+'/'+dStart[1]+'/'+dStart[2]) - new Date())/86400000;
if(fromToday > 330){
alert('Bookings cannot be made more than 11 months in advance. Please review your check-in date.');
return;
}
if(fromToday < 1){
alert('Please revise your selection. You must use a future date for a new check-in.');
return;
}
if(_nights < 1){
alert('Please enter a check-out date which occurs after the check-in date.');
return;
}
} catch(e){}
var message = '<div style="height:160px;padding-top:60px;" align="center"><img src="'+appproxypath+'images/loading.gif"><div style="margin:5px;"><b>Please wait whilst checking availability...</b></div></div>';
var bookDiv = $("bookingDiv");
bookDiv.innerHTML = message;
var bookDiv2 = $("newResultsContainer");
bookDiv2.innerHTML = "";
ShowPlaceInfo('4');
try {
xmlRequest = new Ajax.Request (
url,
{
method : 'GET',
onSuccess : function ( resp ) {try{
changeDestContentAll(false);
//alert(resp.responseText);
responseXml = resp.responseXML;
for (var i = responseXml.firstChild; i != null; i = i.nextSibling) {
for (var j = i.firstChild; j != null; j = j.nextSibling) {
if (j.nodeValue != null && j.nodeValue != '') {
bookDiv.innerHTML = "";
bookDiv.innerHTML = j.nodeValue;
j = j.nextSibling;
if (j != null) {
if (j.nodeName == "#cdata-section")
bookDiv2.innerHTML = j.nodeValue;
}
else
break;
}
}
}
var calendarDiv = document.getElementById('wct_check_inContainer');
if (calendarDiv != null) {
var divcHotels = document.createElement('div');
divcHotels.setAttribute("id", "HotelsDateContainer");
var scrHotels = document.createElement('script');
var txtHotels = 'new DatetimeToolbocks({ inputValue:"' + checkIn + '", elementId:"wct_check_in",startDate:"true",elementNextId:"wct_check_out",calendarOptions: {textDateClass:"textBlackDefault"}})';
scrHotels.text = txtHotels;
var divcHotelsEnd = document.createElement('div');
divcHotelsEnd.setAttribute("id", "HotelsDateEndContainer");
var scrHotelsEnd = document.createElement('script');
var txtHotelsEnd = 'new DatetimeToolbocks({ inputValue:"' + checkOut + '", elementId:"wct_check_out",startDate:"false",elementNextId:"wct_check_in",calendarOptions: {textDateClass:"textBlackDefault"}})';
scrHotelsEnd.text = txtHotelsEnd;
var cellHotels = $('wct_check_inContainer');
var cellHotelsEnd = $('wct_check_outContainer');
cellHotels.appendChild(divcHotels);
cellHotels.appendChild(scrHotels);
cellHotelsEnd.appendChild(divcHotelsEnd);
cellHotelsEnd.appendChild(scrHotelsEnd);
$("wct_id").value = wctId;
if(rooms)
document.getElementById('wct_rooms').selectedIndex = rooms;
if(adults)
document.getElementById('wct_adults').selectedIndex = adults;
if(kids)
document.getElementById('wct_kids').selectedIndex = kids;
if(curr)
document.getElementById('wct_currency').selectedIndex = curr;
}
}catch(err){}
},
onFailure : function ( resp ) {
//TODO -- change messge
//alert(resp.responseText);
changeDestContentAll(true);
bookDiv.innerHTML = "<center><b>Sorry, we're unable to load data at the moment</b></center>";
bookDiv2.innerHTML = '';
return;
},
onException: function ( resp ) {
//TODO -- change messge
//alert(resp.responseText);
changeDestContentAll(true);
bookDiv.innerHTML = "<center><b>Sorry we're unable to load data at the moment</b></center>";
bookDiv2.innerHTML = '';
return;
}
}
);
}
catch(err)
{
alert(err);
}
}
function changeDestContentAll( show ) {
try {
if ( show ) {
$('DestContentAll').style.display = 'block';
} else {
$('DestContentAll').style.display = 'none';
}
} catch (e) {}
}
function checkBooking()
{
var isBooking = $('loadBooking');
/*
alert(isBooking.length);
alert(isBooking + '\n' + isBooking.value);
*/
if(isBooking)
{
if(isBooking.value != '')
{
switch(isBooking.value)
{
case "wct":
wctCheckAvailability(document.WCTform3);
break;
case "hw":
checkBookingAvailability(document.hostelsform);
break;
}
}
}
else
{
return false;
}
}
