function StepBack(){var n=[];FindInNewGuestContext(".ContentPage:visible",".RadioTable .AppID").each(function(){n.push(parseInt(FindInNewGuestContext(null,this).val()))});$.ajax({url:AppointmentGuest_URL_BookNow_StepBack,type:"POST",dataType:"json",contentType:"application/json; charset=utf-8",data:JSON.stringify(n),success:function(n,t,i){UserAuthenticated(i)}})}function SetStepButtons(){var n;$NextButton=FindInNewGuestContext(null,"#NextButton");FindInNewGuestContext(null,".ContentPage:first").is(":visible")?(FindInNewGuestContext(null,"#NextButtonContainer").show(),FindInNewGuestContext(null,"#PrevButtonContainer").hide(),$("#BackToAppointments").show(),$("#navigation").find("#GuestLoginContainer").show()):FindInNewGuestContext(null,".ContentPage:last").is(":visible")?(FindInNewGuestContext(null,"#NextButtonContainer").hide(),FindInNewGuestContext(null,"#PrevButtonContainer").hide(),$("#BackToAppointments").show(),$("#navigation").find("#GuestLoginContainer").hide()):($("#BackToAppointments").hide(),$("#navigation").find("#GuestLoginContainer").hide(),FindInNewGuestContext(null,"#NoResults").is(":visible")||FindInNewGuestContext(null,"#MaxResultsReached").is(":visible")||FindInNewGuestContext(null,"#CannotMakeApp").is(":visible")||FindInNewGuestContext(null,"#NewAppUnavailable").is(":visible")||FindInNewGuestContext(null,"#NoAppsAvailable").is(":visible")?(FindInNewGuestContext(null,"#NextButtonContainer").hide(),FindInNewGuestContext(null,"#PrevButtonContainer").hide()):(FindInNewGuestContext(null,"#NextButtonContainer").show(),FindInNewGuestContext(null,"#PrevButtonContainer").show()),FindInNewGuestContext(null,"#CannotMakeApp").is(":visible")&&(FindInNewGuestContext(null,".Steps td.ThemeStep").removeClass("ThemeStep").prev().addClass("ThemeStep"),FindInNewGuestContext(null,"h1 span.ThemeText").text(FindInNewGuestContext(null,".Steps td:first .StepContent").text())));var t="g-m-next-1",i="g-m-next-2",r="g-m-next-3",u="g-m-next-4",f="g-m-confirm-booking";AppointmentGuest_Model_IsMobile||(t="g-next-1",i="g-next-2",r="g-next-3",u="g-next-4",f="g-confirm-booking");$NextButton.removeClass(t).removeClass(i).removeClass(r).removeClass(u).removeClass(f);$NextButton.removeClass("AjaxLoading");n=FindInNewGuestContext(".ContentPage:visible","form:visible").get(0);FindInNewGuestContext(null,"#Content1").is(":visible")?$NextButton.addClass(t).val("Next"):FindInNewGuestContext(null,"#Content2").is(":visible")?($NextButton.addClass(i).val("Next"),FindInNewGuestContext("#Content2",".DefaultAppointmentTimes").hasClass("openedAccordion")?n&&n.setAttribute("action",AppointmentGuest_URL_BookNow_SelectDateTime):n&&n.setAttribute("action",AppointmentGuest_URL_BookNow_SelectSpecificDateTime)):FindInNewGuestContext(null,"#Content3").is(":visible")?$NextButton.addClass(r).val("Next"):FindInNewGuestContext(null,"#Content4").is(":visible")?$NextButton.addClass(u).val("Next"):$NextButton.addClass(f).val(confirmBookingText)}function setNextStepButtonByAccordion(){SetStepButtons()}function UpdateHeading(n){var t=parseInt(FindInNewGuestContext(null,".ContentPage:visible").attr("id").substring(7))+n,i;t>6&&(t=6);i=FindInNewGuestContext(null,'[name="rdbLocationGrp"]:checked').val();$(".OpeningHoursData").show();$(".ContactUsChunk").hide();$(".ContactUs_"+i).show();t==6?($("#contactusdisplay").show().find("h3, p").hide(),$("#ReturnToStart, #GuestAccountReturnToStart").show(),$("#GuestAccountRegisterLink").hide(),hideLoginContainer()):t==1?($("#contactusdisplay").hide(),$("#ReturnToStart, #GuestAccountReturnToStart").hide(),$("#GuestAccountRegisterLink").show()):($("#contactusdisplay").show().find("h3, p").hide(),$("#ReturnToStart, #GuestAccountReturnToStart").show(),$("#GuestAccountRegisterLink").hide(),hideLoginContainer());switch(t){default:case 1:FindInNewGuestContext(null,"#Heading").text(AppointmentGuest_Model_Heading);FindInNewGuestContext(null,"#StepText").html("Step <b>1<\/b> of <b>4<\/b>");break;case 2:FindInNewGuestContext(null,"#Heading").text("Time");FindInNewGuestContext(null,"#StepText").html("Step <b>2<\/b> of <b>4<\/b>");break;case 3:FindInNewGuestContext(null,"#Heading").text("Time");FindInNewGuestContext(null,"#StepText").html("Step <b>2<\/b> of <b>4<\/b>");break;case 4:FindInNewGuestContext(null,"#Heading").text("Time");FindInNewGuestContext(null,"#StepText").html("Step <b>2<\/b> of <b>4<\/b>");break;case 5:FindInNewGuestContext(null,"#Heading").text("Time");FindInNewGuestContext(null,"#StepText").html("Step <b>2<\/b> of <b>4<\/b>");break;case 6:FindInNewGuestContext(null,"#Heading").text("Info");FindInNewGuestContext(null,"#StepText").html("Step <b>3<\/b> of <b>4<\/b>");break;case 7:FindInNewGuestContext(null,"#Heading").text("Done");FindInNewGuestContext(null,"#StepText").html("Step <b>4<\/b> of <b>4<\/b>")}}function uncheckAllExceptSpecific(n){FindInNewGuestContext(null,"input[name=Appointments]:visible").each(function(){FindInNewGuestContext(null,this).parent().parent().next().val()!=n&&(FindInNewGuestContext(null,this).prop("checked",!1),FindInNewGuestContext(null,this).parent().removeClass("checked"))})}function DaysSelected(){var t=FindInNewGuestContext(null,".SelectDays").find("input:checkbox:checked").length,n;for(t>=1?FindInNewGuestContext(null,"#NextButton").removeAttr("disabled"):FindInNewGuestContext(null,"#NextButton").attr("disabled","disabled"),n=0;n<7;n++)FindInNewGuestContext(null,'[name="Days['+n+']"]:checked').length==0?FindInNewGuestContext(null,'[name="Days['+n+']"]').closest(".SelectDays").find("label").fadeTo("fast",.3):FindInNewGuestContext(null,'[name="Days['+n+']"]').closest(".SelectDays").find("label").fadeTo("fast",1)}function EnableDays(){for(var t=moment(FindInNewGuestContext("#Content3","#StartDate").mobiscroll("getVal")).format("DD/MM/YYYY"),r=moment(FindInNewGuestContext("#Content3","#EndDate").mobiscroll("getVal")).format("DD/MM/YYYY"),i=[],n=0;n<7;n++){if(t==r){i.push(moment(t,"DD/MM/YYYY").day());break}i.push(moment(t,"DD/MM/YYYY").day());t=moment(t,"DD/MM/YYYY").add(1,"d").format("DD/MM/YYYY")}for(n=0;n<7;n++)i.indexOf(n)==-1?FindInNewGuestContext(null,'[name="Days['+n+']"]:visible').length>0&&FindInNewGuestContext(null,'[name="Days['+n+']"]:visible').attr("disabled","disabled").closest(".SelectDays").find("label").fadeTo("fast",.3):FindInNewGuestContext(null,'[name="Days['+n+']"]:visible').length>0&&FindInNewGuestContext(null,'[name="Days['+n+']"]:visible').removeAttr("disabled").closest(".SelectDays").find("label").fadeTo("fast",1);FindInNewGuestContext(null,".SelectDays").find("input:checkbox").prop("checked",!1);FindInNewGuestContext(null,".SelectDays").find("input:checkbox:enabled").prop("checked",!0);DaysSelected();FindInNewGuestContext(null,".SelectDays").find("input:checkbox").closest("SelectDays").unbind("click",ClickableLines);FindInNewGuestContext(null,".SelectDays").find("input:checkbox:enabled").closest("SelectDays").bind("click",ClickableLines);$.uniform.update()}function updateSpecificTime(n){for(var t=moment(FindInNewGuestContext(null,n).find("#LastAppTimeSpecific").val(),"DD/MM/YYYY h:mm:ss A"),r=t.toDate(),e=moment(FindInNewGuestContext(null,n).find("#StartDate").val(),"DD/MM/YYYY").toDate().addDays(AppointmentGuest_Model_DaysBeforeAppointment),o=moment(FindInNewGuestContext(null,n).find("#EndDateOriginal").val(),"DD/MM/YYYY").toDate(),h=t.format("h:mm A"),u=[],f,s,i=0;i<7;i++)FindInNewGuestContext(null,"#SpecificDate").closest(".ContentPage").find('[name="ClinicAvailableDays['+i+']"]').val()!="True"&&u.push("w"+i);AppointmentGuest_Model_IsMobile?FindInNewGuestContext(null,"#SpecificDate").mobiscroll().calendar({anchor:n+" .AccordionPreChosen",display:calendarDisplayLocation(!0),setOnDayTap:!0,yearChange:!1,controls:["calendar"],select:["single"],dateFormat:"dd/mm/yy",max:o,min:e,defaultValue:r,buttons:[],invalid:u,onShow:AllowMobiScrollScrolling}):FindInNewGuestContext(null,"#SpecificDate").mobiscroll().calendar({anchor:n+" .AccordionPreChosen",display:calendarDisplayLocation(!1),context:n,cssClass:"bubbleDatePickerDesktop",setOnDayTap:!0,yearChange:!1,controls:["calendar"],select:["single"],dateFormat:"dd/mm/yy",max:o,min:e,defaultValue:r,buttons:[],invalid:u,onShow:AllowMobiScrollScrolling});FindInNewGuestContext(null,"#SpecificDate").mobiscroll("setVal",r);FindInNewGuestContext(null,"#SpecificDate").val(t.format("DD/MM/YYYY"));f=!1;s=parseInt(t.format("HH"))*60+parseInt(t.format("mm"));FindInNewGuestContext(null,"#SpecificTime").find("option").each(function(){var t=FindInNewGuestContext(null,this),n=parseInt(t.val());!f&&n>s&&(f=!0,FindInNewGuestContext(null,"#SpecificTime").val(n))})}function AppointmentGuest_init(){$(document).ajaxStop(function(){SetStepButtons()});$NextButton=FindInNewGuestContext(null,"#NextButton");StartLoad=1;$NextButton.button().click(function(){$NextButton.attr("disabled",!0);$NextButton.val("");$NextButton.addClass("AjaxLoading");$.ajax({type:"POST",url:AppointmentGuest_URL_BookNow_CanClientMakeBooking,data:{ActuallyCheck:FindInNewGuestContext(null,"#Content1").is(":visible")},error:function(){$NextButton.data("progress",!1);displayErrorBarMobile();$NextButton.attr("disabled",!1)},success:function(n,t,i){var r,f,u;if(UserAuthenticated(i),n=="false")$.ajax({type:"POST",url:AppointmentGuest_URL_BookNow_SelectDateTime,data:FindInNewGuestContext(".ContentPage:visible","form:visible").serialize(),error:function(){$NextButton.data("progress",!1);displayErrorBarMobile()},success:function(n,t,i){UserAuthenticated(i);FindInNewGuestContext(null,".ContentPage:visible").hide();FindInNewGuestContext(null,"#Content3").html(n).show();FindInNewGuestContext(null,"#NextButtonContainer").hide();$("#BackToAppointments").hide()}});else{if(Confirmation==1&&Checked==0&&FindInNewGuestContext(null,"#Content1:visible").length>0&&FindInNewGuestContext(null,"#rdbExistingTrue").is(":checked")){$("#OngoingCare").mobiscroll().widget({display:"center",buttons:[],closeOnOverlayTap:!1,cssClass:"mobiscrollWidget",onShow:AllowMobiScrollScrolling}).mobiscroll("show");FindInNewGuestContext(null,"#NextButton").removeClass("AjaxLoading");Checked=1;return}if(Checked=0,FindInNewGuestContext(null,'form[action*="SelectAppointment"]').is(":visible")&&FindInNewGuestContext(null,'[name="SelectedAppointment"]').val(FindInNewGuestContext(null,"[name=Appointments]:checked").parent().parent().next().val()),$NextButton.data("progress"))return;$NextButton.data("progress",!0);FindInNewGuestContext(null,".ui-datepicker").hide();FindInNewGuestContext(null,"#Content2:visible").length>0&&FindInNewGuestContext("#Content2",".DefaultAppointmentTimes").hasClass("openedAccordion")||FindInNewGuestContext(null,"#Content3:visible").length>0&&FindInNewGuestContext("#Content3",".DefaultAppointmentTimes").hasClass("openedAccordion")||FindInNewGuestContext(null,"#Content4:visible").length>0?(FindInNewGuestContext(null,".ContentPage").removeClass("AppointmentChosenHere"),FindInNewGuestContext(null,".ContentPage:visible").addClass("AppointmentChosenHere"),r=FindInNewGuestContext(null,"[name=Appointments]:checked:visible").parent().parent().next().val(),r==null&&(r=FindInNewGuestContext(null,"[name=Appointments]:checked:visible").parent().parent().parent().parent().next().val()),f="SelectedAppointment="+r+"&RescheduleAppointmentID="+FindInNewGuestContext(null,"#AppointmentID").val()+"&AppTypeID="+FindInNewGuestContext(null,"#AppTypeID").val(),$.ajax({type:"POST",url:AppointmentGuest_URL_BookNow_SelectAppointment,data:f,error:function(){$NextButton.data("progress",!1);displayErrorBarMobile()},success:function(n,t,i){UserAuthenticated(i);FindInNewGuestContext(null,".ContentPage:visible").hide();FindInNewGuestContext(null,"#Content5").html(n).show();FindInNewGuestContext(null,".Steps td.ThemeStep").removeClass("ThemeStep").next().next().addClass("ThemeStep");FindInNewGuestContext(null,"h1 span.ThemeText").text(FindInNewGuestContext(null,".ThemeStep div.StepContent").text());SetStepButtons();UpdateHeading(5);$NextButton.data("progress",!1);animateScrollTop()}})):(FindInNewGuestContext(null,"#Content3").is(":visible")&&FindInNewGuestContext(null,'[name="SelectedAppointment"]').val(FindInNewGuestContext(null,"[name=Appointments]:checked:visible").parent().parent().next().val()),u=!0,FindInNewGuestContext(null,"#Content5").is(":visible")&&(u=ValidatePersonalDetails()),u?$.ajax({type:"POST",url:FindInNewGuestContext(".ContentPage:visible","form:visible").attr("action"),data:FindInNewGuestContext(".ContentPage:visible","form:visible").serialize(),error:function(){$NextButton.data("progress",!1);displayErrorBarMobile()},success:function(n,t,i){UserAuthenticated(i);(FindInNewGuestContext(null,"#Content2").is(":visible")||FindInNewGuestContext(null,"#Content3").is(":visible")||FindInNewGuestContext(null,"#Content4").is(":visible"))&&StepBack();FindInNewGuestContext(null,".ContentPage:visible").hide().next().html(n).show();FindInNewGuestContext(null,".Steps td.ThemeStep").removeClass("ThemeStep").next().addClass("ThemeStep");FindInNewGuestContext(null,"h1 span.ThemeText").text(FindInNewGuestContext(null,".ThemeStep div.StepContent").text());SetStepButtons();$NextButton.data("progress",!1);animateScrollTop()}}):$NextButton.data("progress",!1).removeAttr("disabled").removeClass("AjaxLoading"));UpdateHeading(1)}}})});FindInNewGuestContext(null,"#PrevButton").button().click(function(){var n,t;if(FindInNewGuestContext(null,"#PrevButton").attr("disabled",!0),n=FindInNewGuestContext(null,"#PrevButton"),n.data("progress")){FindInNewGuestContext(null,"#PrevButton").removeAttr("disabled");return}n.data("progress",!0);FindInNewGuestContext(null,".ui-datepicker").hide();(FindInNewGuestContext(null,"#Content2:visible").length>0||FindInNewGuestContext(null,"#Content3:visible").length>0||FindInNewGuestContext(null,"#Content4:visible").length>0||FindInNewGuestContext(null,"#Content5:visible").length>0)&&StepBack();FindInNewGuestContext(null,"#Content5:visible, #Content6:visible").length>0?(t=FindInNewGuestContext(null,".ContentPage.AppointmentChosenHere").removeClass("AppointmentChosenHere"),t.find(".StepBackReloadNextAvailable").val("true"),FindInNewGuestContext(null,"#Content5, #Content6").hide(),t.show()):(FindInNewGuestContext(null,".ContentPage:visible").prev().find(".StepBackReloadNextAvailable").val()!=null&&FindInNewGuestContext(null,".ContentPage:visible").prev().find(".StepBackReloadNextAvailable").val("true"),FindInNewGuestContext(null,".ContentPage:visible").hide().prev().show());FindInNewGuestContext(null,".Steps td.ThemeStep").removeClass("ThemeStep").prev().addClass("ThemeStep");FindInNewGuestContext(null,"h1 span.ThemeText").text(FindInNewGuestContext(null,".ThemeStep div.StepContent").text());SetStepButtons();n.data("progress",!1);animateScrollTop();UpdateHeading(0);FindInNewGuestContext(null,"#PrevButton").removeAttr("disabled");FindInNewGuestContext(null,"#NextButton").removeAttr("disabled");FindInNewGuestContext(null,"#CannotMakeAppButtonContainer").hide()});FindInNewGuestContext(null,"#ReturnButton").click(function(){FindInNewGuestContext(null,".ContentPage:visible").html("").attr("id")=="Content2"?resetToFirstPage():(FindInNewGuestContext(null,"#PrevButton").click(),FindInNewGuestContext(null,"#ButtonContainer").show())})}var AppointmentGuest_Model_IsMobile,AppointmentGuest_Model_Heading,AppointmentGuest_Model_DaysBeforeAppointment,AppointmentGuest_URL_BookNow_StepBack,AppointmentGuest_URL_BookNow_SelectDateTime,AppointmentGuest_URL_BookNow_SelectSpecificDateTime,AppointmentGuest_URL_BookNow_SelectAppointment,AppointmentGuest_URL_BookNow_CanClientMakeBooking,StartLoad=0,$NextButton=FindInNewGuestContext(null,"#NextButton")