$(document).ready(function(){$(document).ready(function(){$('.captchaRefresh').live("click",function(event){$('#captcha_image').attr("src",'/captcha/captcha.php?'+(new Date).valueOf());$('#antibot_answer').val('');});});$("#checkAvailability").live('click',function(e){e.preventDefault();var errors=[];var validate;validate=$("#reservation_date").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var date=validate.value;var dateArray=date.split("/");dateArray[2]=dateArray[2].substr(2,2);var requestDate=dateArray.join("");}
validate=$("#time").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var requestTime=validate.value;}
validate=$("#num_of_people").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var num_of_people=validate.value;}
if(errors.length>0){showError('<b>The following errors occured:</b><br>'+errors.join('<br>'));return false;}
var template_id=$("#template_id").val();$searchResults=$("#search_results");var type=$(this).data('type');var request='number_of_people='+num_of_people.trim()+'&template_id='+template_id.trim()+'&date='+requestDate.trim()+'&time='+requestTime.trim();dashboardApp.openPanel('/dashboard/'+type+'/results',request,3,'double');return true;});$("#createSpaReservation").live('click',function(e){e.preventDefault();var errors=[];var postdata='';validate=$("#category").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var spa_category=validate.value;}
validate=$("#subcategory").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var spa_sub_category=validate.value;}
validate=$("#num_of_people").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var num_of_people=validate.value;}
validate=$("#time").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var requestTime=validate.value;}
validate=$("#spadate").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var date=validate.value;var dateArray=date.split("/");dateArray[2]=dateArray[2].substr(2,2);var requestDate=dateArray.join("");}
if(errors.length>0){showError('<b>The following errors occured:</b><br>'+errors.join('<br>'));return false;}
isBooking=true;postdata='type=spa&category='+escape(spa_category.trim())+'&sub_category='+escape(spa_sub_category.trim())+'&date='+requestDate+'&time='+requestTime+'&num_in_party='+num_of_people;$searchResults=$("#search_results");dashboardApp.openPanel('/dashboard/cart','template=cart&'+postdata,1,'single');dashboardApp.openPanel('/dashboard/spa/request',postdata,2,'triple');});String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"");}
function isEmpty(val)
{return(/^\s*$/).test(val);}
$("#submit_spa_request").live('click',function(e){e.preventDefault();$("#spa_request_loading").html('<img src=\"'+loadingGif.src+'\">').show();$("#submit_spa_request").hide();var spa_contact_method=$("#spa_contact_method").val();var spa_category=$("#category").val();var spa_sub_category=$("#subcategory").val();var num_in_party=$("#num_in_party").val();var requestTime=$("#time").val();var date=$("#date").val();var errors=[];validate=$("#spa_firstname").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var spa_firstname=validate.value;}
validate=$("#spa_lastname").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var spa_lastname=validate.value;}
var spa_email='';var spa_confirm_email=$("#spa_confirm_email").val();validate=$("#spa_email").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{spa_email=validate.value;}
$("#spa_confirm_email").removeClass('errorInput');if(spa_confirm_email.toLowerCase()!=spa_email.toLowerCase()){$("#spa_confirm_email").addClass('errorInput');errors.push("Email does not match email confirmation");}
var spa_phone='';var spa_phone_element=$("#spa_phone");if(spa_contact_method=='Phone'){spa_phone_element.addClass('mandatory');}else{spa_phone_element.removeClass('mandatory');}
validate=spa_phone_element.validate_input_data();if(validate.value===false){errors.push(validate.message);}else{spa_phone=validate.value;}
validate=$("#spa_comments").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var spa_comments=validate.value;}
validate=$("#spa_address").validate_input_data();if(validate.value===false){errors.push(validate.message);}
validate=$("#spa_country").validate_input_data();if(validate.value===false){errors.push(validate.message);}
validate=$("#spa_city").validate_input_data();if(validate.value===false){errors.push(validate.message);}
validate=$("#spa_state").validate_input_data();if(validate.value===false){errors.push(validate.message);}
validate=$("#spa_zip").validate_input_data();if(validate.value===false){errors.push(validate.message);}
validate=$("#antibot_answer").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var captcha_answer=validate.value;}
if(errors.length>0){$("#spa_request_loading").html('').hide();$("#submit_spa_request").show();showError('<b>The following errors occured:</b><br>'+errors.join('<br>'));return false;}
$.ajax({type:'POST',url:'/dashboard/spa/submit',data:'captcha_answer='+captcha_answer+'&category='+spa_category.trim()+'&sub_category='+spa_sub_category.trim()+'&firstname='+spa_firstname+'&lastname='+spa_lastname+'&email='+spa_email+'&date='+date+'&time='+requestTime+'&num_in_party='+num_in_party+'&comments='+spa_comments+'&contact_method='+spa_contact_method+'&phone='+spa_phone,dataType:'json',success:function(response){if(response.responseCode=='SUCCESS'){isBooking=false;var spa_request_success_message='Thank you for requesting a spa treatment. You will be contacted by our spa staff shortly to confirm your treatment and appointment';dashboardApp.openPanel('/dashboard/spa/confirm','request_id='+response.result.reservation_id+'&message='+spa_request_success_message+'&resdate='+date+'&category='+spa_category+'&sub_category='+spa_sub_category+'&restime='+requestTime+'&first='+spa_firstname+'&last='+spa_lastname+'&guests='+num_in_party,1,'single');dashboardApp.openPanel('/dashboard/upsell',null,2,'double');}else{showError('Reservation failed<br>'+response.message);$("#submit_spa_request").removeAttr('disabled').show();$("#submit_spa_request").show();}
$("#spa_request_loading").html('').hide();}});});$("#submit_reservation").live('click',function(e){e.preventDefault();$("#submit_reservation").attr('disabled',true).hide();$("#reserve_submit").html('<img src=\"'+loadingGif.src+'\">').show();var errors=[];var firstname=$("#firstname").val();var lastname=$("#lastname").val();var email=$("#email").val();var address=$("#address").val();var address2=$("#address2").val();var city=$("#city").val();var state=$("#state").val();var zip=$("#zip").val();var country=$("#country").val();var phone=$("#phone").val();var booking_type=$("#booking_type").val();validate=$("#firstname").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var firstname=validate.value;}
validate=$("#lastname").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var lastname=validate.value;}
validate=$("#email").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var email=validate.value;}
var confirm_email=$("#confirm_email").val();if(confirm_email.toLowerCase()!=email.toLowerCase()){$("#email").addClass('errorInput');errors.push("Email does not match email confirmation");}
validate=$("#address").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var address=validate.value;}
validate=$("#city").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var city=validate.value;}
validate=$("#state").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var state=validate.value;}
validate=$("#zip").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var zip=validate.value;}
validate=$("#country").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var country=validate.value;}
validate=$("#phone").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var phone=validate.value;}
validate=$("#antibot_answer").validate_input_data();if(validate.value===false){errors.push(validate.message);}else{var captcha_answer=validate.value;}
if(errors.length>0){showError('<b>The following errors occured:</b><br>'+errors.join('<br>'));$("#submit_reservation").removeAttr('disabled').show();$("#reserve_submit").html('').hide();return false;}
var bookingID=$("#bookingID").val();var bookingStatus=$("#bookingStatus").val();var cctype=$("#cctype").val();var ccnum=$("#ccnum").val();var cvv2=$("#cvv2").val();var ccexpiry_month=$("#ccexpiry_month").val();var ccexpiry_year=$("#ccexpiry_year").val();postdata=new Array();postdata.push('captcha_answer='+captcha_answer);postdata.push('credit_card_info[CardNumber]='+ccnum);postdata.push('credit_card_info[ExpirationDate]='+ccexpiry_month+'/'+ccexpiry_year);postdata.push('credit_card_info[CardHolderName]='+firstname+' '+lastname);postdata.push('credit_card_info[CardHolderFirstName]='+firstname);postdata.push('credit_card_info[CardHolderLastName]='+lastname);postdata.push('credit_card_info[CardHolderAddressLine]='+address);postdata.push('credit_card_info[CardHolderCityName]='+city);postdata.push('credit_card_info[CardHolderStateProv]='+state);postdata.push('credit_card_info[CardHolderCountryCode]='+city);postdata.push('credit_card_info[CardHolderPostalCode]='+zip);postdata.push('credit_card_info[CardHolderEmail]='+email);postdata.push('credit_card_info[BookingStatus]='+bookingStatus);postdata.push('credit_card_info[CardHolderPhone]='+phone);$.ajax({type:'POST',url:'/dashboard/'+booking_type+'/submit/?bookingID='+bookingID,data:postdata.join('&'),dataType:'json',success:function(response){if(response.responseCode=='SUCCESS'){isBooking=false;var location;var time;var date;var guests;var reservation_id;var name;location=response.result.location;time=response.result.time;date=response.result.date;guests=response.result.guests;reservation_id=response.result.confirmation_id;name=response.result.name;var postdata=new Array;postdata.push('location='+location);postdata.push('time='+time);postdata.push('date='+date);postdata.push('guests='+guests);postdata.push('reservation_id='+reservation_id);postdata.push('name='+name);postdata.push('booking_type='+booking_type);dashboardApp.openPanel('/dashboard/'+booking_type+'/confirm',postdata.join('&'),1,'single');dashboardApp.openPanel('/dashboard/upsell',null,2,'double');$("#reservation_id").val(reservation_id);}else{showError('Reservation failed<br>'+response.message);$("#reserve_submit").html('').hide();$("#submit_reservation").removeAttr('disabled').show();if(response.message.indexOf('Please cancel the current transaction and reenter')!=-1)
{$("#DashCancel").data('noconfirm',true);return false;}}}});});$("#category").live('change',function(){$("#template_id").val($("#category option:selected").attr('template_id'));$("#subcategory option").remove();$("#subcategory").append('<option value="">Loading...</option>');var category;category=$(this).val().trim();category=category.replace(" ","_");$.getJSON('/dashboard/spa/subCategories/','category='+category,function(response){var option_html='';if(response.result.length>0){for(d in response.result){if(response.result[d].name){value=response.result[d].name;label=response.result[d].name;if(label.length>32)
{label=label.substring(0,29)+'..';}
option_html+='<option value="'+value+'" template_id="'+response.result[d].id+'" data-templateStartHour="'+response.result[d].template_starthour+'" data-templateEndHour="'+response.result[d].template_endhour+'" data-templateInterval="'+response.result[d].template_interval+'">'+value+'</option>';}}
option_html='<option value="" >-- Select --</option>'+option_html;$("#subcategory").removeAttr('disabled');}else{option_html='<option value="">--</option>';}
$("#subcategory option").remove();$("#subcategory").append(option_html);});});$("#subcategory").live('change',function(){subcatChange();});$(".anBookItem").live('click',function()
{var e=$(this);var bookingID=e.data('bookingid');var bookingDate=e.data('bookingdate');var bookingTime=e.data('bookingtime');var bookingTimestamp=e.data('bookingtimestamp');var bookingPrice=e.data('bookingprice');var bookingTotalPrice=e.data('bookingtotalprice');var bookingStatus=e.data('bookingstatus');var bookingType=(e.data('bookingtype')=='D')?'dining':'golf';var num_in_party=e.data('numinparty');postdata=new Array;postdata.push('bookingStatus='+bookingStatus);postdata.push('bookingID='+bookingID);postdata.push('bookingDate='+bookingDate);postdata.push('bookingTime='+bookingTime);postdata.push('bookingTimestamp='+bookingTimestamp);postdata.push('bookingPrice='+bookingPrice);postdata.push('bookingTotalPrice='+bookingTotalPrice);isBooking=true;dashboardApp.openPanel('/dashboard/cart','num_in_party='+num_in_party+'&template=cart&type='+bookingType+'&'+postdata.join('&'),1,'single');dashboardApp.openPanel('/dashboard/'+bookingType+'/reserve','template=reserve&type='+bookingType+'&'+postdata.join('&'),2,'triple');})});function subcatChange(){var $selected=$("#subcategory option:selected");$("#template_id").val($selected.attr('template_id'));}
function clearTimeDropdown(){$('#time').find('option').remove().end().append('<option selected value="">-- Select --</option>');}
function clearSpaDropdown(){clearTimeDropdown();}
function buildSpaDropdown(start,end,interval){buildTimeDropdown(start,end,interval);}
function buildTimeDropdown(start,end,interval){$('#time_selector').show();$('#time_message').hide();var mins;var hours;var meridiem;var timeCount=0;clearTimeDropdown();for(hours=start;hours<=end;hours++){var stop_point;if(hours==end){stop_point=(0+interval);}
else
{stop_point=60;}
for(mins=0;mins<stop_point;mins+=interval){meridiem=(hours>11&&hours<24)?'PM':'AM';hour=(hours>12)?hours-12:hours;minutes=(mins<10)?'0'+mins:''+mins;$("#time").append($("<option></option>").text(hour+":"+minutes+meridiem));timeCount++;}}
if(timeCount==0){$('#time_selector').hide();$('#time_message').show();}}
function limitTime(){var selectedDate=($('#spadate').length)?$('#spadate').val():$('#reservation_date').val();var d=new Date();var day=d.getDate();var month=d.getMonth()+1;var year=d.getFullYear();if(month<10){month="0"+month;}
if(day<10){day="0"+day;}
var today=month+"/"+day+"/"+year;if(today==selectedDate){return d.getHours()+2;}
return false;}
