var rego_global = ''; var makeName_global = ''; var modelName_global = ''; var year_global = ''; var seriesName_global = ''; var seriesModelYear_global = ''; var badgeName_global = ''; var badge2Name_global = ''; var doorNumber_global = ''; var bodyName_global = ''; var gearNumber_global = ''; var transmissionName_global = ''; var driveName_global = ''; var capacityDescription_global = ''; var cylinders_global = ''; var fuelName_global = ''; var state_global = ''; var km_global = ''; var old_diff_month_global = ''; var book_servicetype_global = ''; var is4by4_global = false; var selected_package_global = false; var selected_upsell_global = false; var selected_fixedprice_upsell_global = false; var book_preferred_location_global = ''; var book_preferred_locationID_global = '' ; var isloanCar_global =0; var loanCarAvailable_global =0; var loanCarNextDate_global =''; var appointmentNextDate_global =''; var loanCarAppointmentNextDate_global =''; var is_book_loan_car_checked = false; var is_book_preferred_dropoff_time_available = false; var redbookCode_global = ''; var isRegoSearch = true; var isVoucherApplied = false; var book_voucher_code_global = ''; var book_transportation_loancar_available_global = ''; var is_jarvis_used_cars_global = false; var myHistory = []; var myHistory_prev = []; var myHistory_breadcrumb = []; var temprego = ''; var tempkm; var global_price; var ecomList; var locationName; function regosearch(searchflag){ isRegoSearch = searchflag; if(isRegoSearch){ $('.carmake_div').hide(); $('.carrego_div').show(); $('.rego-conatiner').show(); }else{ $('.carrego_div').hide(); $('.carmake_div').show(); $('.rego-conatiner').hide(); temprego = $("#carrego_service_rego").val(); tempkm = $("#carrego_service_km").val(); document.getElementById("carmake_service_km").value = tempkm; } topFunction(); } $(document).on('select2:open', () => { document.querySelector('.select2-search__field').focus(); }); // Init Select2 function init_select2(id_or_class){ $(id_or_class).select2({ //minimumResultsForSearch: Infinity, templateResult: function (select2data, select2container) { if(select2data.element && select2data.element.dataset && select2data.element.dataset.template && select2data.element.dataset.template == "custom"){ var title = ''; var description = ''; title += (select2data.element.dataset.seriesname ? ((title ? " ":"") + select2data.element.dataset.seriesname):""); title += (select2data.element.dataset.seriesmodelyear ? ((title ? " ":"") + select2data.element.dataset.seriesmodelyear):""); title += (select2data.element.dataset.badgename ? ((title ? " ":"") + select2data.element.dataset.badgename):""); title += (select2data.element.dataset.badge2name ? ((title ? " ":"") + select2data.element.dataset.badge2name):""); title += (select2data.element.dataset.doornumber ? ((title ? " ":"") + select2data.element.dataset.doornumber + 'D'):""); title += (select2data.element.dataset.bodyname ? ((title ? " ":"") + select2data.element.dataset.bodyname):""); description += (select2data.element.dataset.gearnumber ? ((description ? " ":"") + select2data.element.dataset.gearnumber +'SP'):""); description += (select2data.element.dataset.transmissionname ? ((description ? " ":"") + select2data.element.dataset.transmissionname):""); description += (select2data.element.dataset.drivename ? ((description ? " ":"") + select2data.element.dataset.drivename):""); description += (select2data.element.dataset.capacitydescription ? ((description ? " ":"") + select2data.element.dataset.capacitydescription+ 'L'):""); description += (select2data.element.dataset.cylinders ? ((description ? " ":"") + select2data.element.dataset.cylinders+'CYL'):""); description += (select2data.element.dataset.fuelname ? ((description ? " ":"") + select2data.element.dataset.fuelname):""); var $container = $( "
" + "
" + "
" + "
" + "
" + "
" ); $container.find(".select2-result-vehicle__title").text(title); $container.find(".select2-result-vehicle__description").text(description); return $container; }else{ if (select2data.element && $(select2data.element) && $(select2data.element).attr("class")) { $(select2container).addClass($(select2data.element).attr("class")); } return select2data.text; } } }).on("select2:unselecting", function (e) { $(this).data('state', 'unselected'); }).on("select2:open", function (e) { if ($(this).data('state') === 'unselected') { $(this).removeData('state'); var self = $(this); setTimeout(function () { self.select2('close'); }, 1); } }).on('select2:open', function () { $('body').addClass("select_overlay"); }).on('select2:close', function () { $('body').removeClass("select_overlay"); }); } // Get Make Data function GetMakeData(){ $('#carmake_make').empty(); $('#carmake_make').html('').trigger('change').prop('disabled',true); $('#carmake_model').empty(); $('#carmake_model').html('').trigger('change').prop('disabled',true); $('#carmake_year').empty(); $('#carmake_year').html('').trigger('change').prop('disabled',true); $('#carmake_series').empty(); $('#carmake_series').html('').trigger('change').prop('disabled',true); $.ajax({ type: "POST", url: '/service/book-service/getdata.php', data: [ {name: 'mode', value: 'getmakedata'} ], dataType: 'JSON', cache: false, success: function (response) { if(response && Object.keys(response).length>0){ $.each(response, function (e, res) { $('#carmake_make').append(''); }); } $('#carmake_make').trigger('change').prop('disabled',false); }, error: function () { $('#carmake_make').trigger('change').prop('disabled',false); } }); } // Get Model Data function GetModelData(makeID){ $('#carmake_model').empty(); $('#carmake_model').html('').trigger('change').prop('disabled',true); $('#carmake_year').empty(); $('#carmake_year').html('').trigger('change').prop('disabled',true); $('#carmake_series').empty(); $('#carmake_series').html('').trigger('change').prop('disabled',true); if(makeID){ Swal.fire({ showCancelButton: false, // There won't be any cancel button showConfirmButton: false, // There won't be any confirm button allowOutsideClick: false, title: 'Processing' }), Swal.showLoading(), $.ajax({ type: "POST", url: '/service/book-service/getdata.php', data: [ {name: 'mode', value: 'getmodeldata'} , {name: 'makeID', value: makeID} ], dataType: 'JSON', cache: false, success: function (response) { if(response && Object.keys(response).length>0){ var current_optgroup = ''; var str=''; $.each(response, function (e, res) { if (res.makeName) { if (res.makeName != current_optgroup ) { if (current_optgroup != '' ) { str += ''; } str += ''; current_optgroup = res.makeName; } } str += (''); }); $('#carmake_model').append(str); } $('#carmake_model').trigger('change').prop('disabled',false); Swal.close(); }, error: function () { $('#carmake_model').trigger('change').prop('disabled',false); Swal.close(); } }); } } // Get Year Data function GetYearData(makeID, modelID){ $('#carmake_year').empty(); $('#carmake_year').html('').trigger('change').prop('disabled',true); $('#carmake_series').empty(); $('#carmake_series').html('').trigger('change').prop('disabled',true); if(makeID && modelID){ Swal.fire({ showCancelButton: false, // There won't be any cancel button showConfirmButton: false, // There won't be any confirm button allowOutsideClick: false, title: 'Processing' }), Swal.showLoading(), $.ajax({ type: "POST", url: '/service/book-service/getdata.php', data: [ {name: 'mode', value: 'getyeardata'} , {name: 'makeID', value: makeID} , {name: 'modelID', value: modelID} ], dataType: 'JSON', cache: false, success: function (response) { if(response && Object.keys(response).length>0){ $.each(response, function (e, res) { $('#carmake_year').append(''); }); } $('#carmake_year').trigger('change').prop('disabled',false); Swal.close(); }, error: function () { $('#carmake_year').trigger('change').prop('disabled',false); Swal.close(); } }); } } // Get Series Data function GetSeriesData(makeID, modelID, year){ $('#carmake_series').empty(); $('#carmake_series').html('').trigger('change').prop('disabled',true); if(makeID && modelID && year){ Swal.fire({ showCancelButton: false, // There won't be any cancel button showConfirmButton: false, // There won't be any confirm button allowOutsideClick: false, title: 'Processing' }), Swal.showLoading(), $.ajax({ type: "POST", url: '/service/book-service/getdata.php', data: [ {name: 'mode', value: 'getseriesdata'} , {name: 'makeID', value: makeID} , {name: 'modelID', value: modelID} , {name: 'year', value: year} ], dataType: 'JSON', cache: false, success: function (response) { if(response && Object.keys(response).length>0){ $.each(response, function (e, res) { var str = ''; str += (res.seriesName ? ((str ? " ":"") + res.seriesName):""); str += (res.seriesModelYear ? ((str ? " ":"") + res.seriesModelYear):""); str += (res.badgeName ? ((str ? " ":"") + res.badgeName):""); str += (res.badge2Name ? ((str ? " ":"") + res.badge2Name):""); str += (res.doorNumber ? ((str ? " ":"") + res.doorNumber + 'D'):""); str += (res.bodyName ? ((str ? " ":"") + res.bodyName):""); str += (res.gearNumber ? ((str ? " - ":"") + res.gearNumber +'SP'):""); str += (res.transmissionName ? ((str ? " ":"") + res.transmissionName):""); str += (res.driveName ? ((str ? " ":"") + res.driveName):""); str += (res.capacityDescription ? ((str ? " ":"") + res.capacityDescription+ 'L'):""); str += (res.cylinders ? ((str ? " ":"") + res.cylinders+'CYL'):""); str += (res.fuelName ? ((str ? " ":"") + res.fuelName):""); $('#carmake_series').append(''); }); } $('#carmake_series').trigger('change').prop('disabled',false); Swal.close(); }, error: function () { $('#carmake_series').trigger('change').prop('disabled',false); Swal.close(); } }); } } function book_preferred_date_picker(){ var startDate = calender_start_date; var endDate = Infinity; $('#book_preferred_date_inline_calender').attr('data-date', startDate); $('#book_preferred_date_inline_calender').datepicker('destroy'); $('#book_preferred_date_inline_calender').datepicker({ daysOfWeekDisabled: [0,6] , startDate:startDate , endDate:endDate , datesDisabled: (HOLIDAYS ? HOLIDAYS : []) }).on("changeDate", function (e) { if (book_preferred_location_global == "" || book_preferred_locationID_global == "") { window.scrollTo({top: $(".book_preferred_location_panel").offset().top - 100,behavior: 'smooth'}); var swal_html = 'Please select location for available dates'; if(swal_html){ Swal.fire({ title: 'Book Service', html: "

"+ swal_html +"

", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } } var getFormattedDate = $('#book_preferred_date_inline_calender').datepicker('getFormattedDate'); $('#book_preferred_date').val(getFormattedDate ? getFormattedDate : ''); get_book_service_preferred_dropoff_time(); }); var getFormattedDate = $('#book_preferred_date_inline_calender').datepicker('getFormattedDate'); $('#book_preferred_date').val(getFormattedDate ? getFormattedDate : ''); get_book_service_preferred_dropoff_time(); } function set_book_preferred_date_picker(selecteddate){ $('#book_preferred_date_inline_calender').datepicker('setDate', selecteddate); var getFormattedDate = $('#book_preferred_date_inline_calender').datepicker('getFormattedDate'); $('#book_preferred_date').val(getFormattedDate ? getFormattedDate : ''); get_book_service_preferred_dropoff_time(); } function checkExpiryTime(){ if(CURRENT_TIME){ $.ajax({ type: "POST", url: '/service/book-service/getdata.php', data: [ {name: 'mode',value: 'checktime'} , {name: 'time',value: CURRENT_TIME} ], cache: false, success: function (response) { if(response == "EXPIRED"){ window.location = CURRENT_URL; } }, error: function () { window.location = CURRENT_URL; } }); } } $(function () { showTabCustom('#servicetype-tab'); //showTab(currentTab); init_select2(".select2"); GetMakeData(); if($('#carmake_make').length>0){ $('#carmake_make').on('select2:select', function (e) { GetModelData($('#carmake_make').val()); }); } if($('#carmake_model').length>0){ $('#carmake_model').on('select2:select', function (e) { GetYearData($('#carmake_make').val(),$('#carmake_model').val()); }); } if($('#carmake_year').length>0){ $('#carmake_year').on('select2:select', function (e) { GetSeriesData($('#carmake_make').val(),$('#carmake_model').val(),$('#carmake_year').val()); }); } // Check every minute time is expired on not? setInterval(function () { checkExpiryTime(); }, 60000); book_preferred_dropoff_time_setting(false,false,false,false,false,false); book_preferred_date_picker(); $('#btngetstarted').click(function () { $('#carrego_service_rego').val($.trim($('#carrego_service_rego').val()).replace(/[^A-Za-z0-9]/g, '').replace(/\s+/gi, '-').toUpperCase()); redbookCode_global = ''; rego_global = ''; makeName_global = ''; modelName_global = ''; year_global = ''; seriesName_global = ''; seriesModelYear_global = ''; badgeName_global = ''; badge2Name_global = ''; doorNumber_global = ''; bodyName_global = ''; gearNumber_global = ''; transmissionName_global = ''; driveName_global = ''; capacityDescription_global = ''; cylinders_global = ''; fuelName_global = ''; state_global = ''; km_global = ''; old_diff_month_global = ''; is4by4_global = false; is_jarvis_used_cars_global = false; var is_process_success = false; var ajax_data = []; if(isRegoSearch){ if ($('#carrego_service_rego').val() && $('#carrego_service_state').val() && $('#carrego_service_km').val()) { ajax_data = [ {name: 'mode',value: 'getvehicledatabyrego'} , {name: 'rego',value: $('#carrego_service_rego').val()} , {name: 'state',value: $('#carrego_service_state').val()} , {name: 'km',value: $('#carrego_service_km').val()} ]; rego_global = $('#carrego_service_rego').val(); state_global = $('#carrego_service_state').val(); km_global = $('#carrego_service_km').val(); } else { var swal_html = 'Please enter all the details'; if ($('#carrego_service_rego').val() == "") { swal_html = "Please enter your car Rego"; }else if ($('#carrego_service_state').val() == "") { swal_html = "Please enter your car registration State"; }else if ($('#carrego_service_km').val() == "") { swal_html = "Please enter your current Kilometres travelled"; } if(swal_html){ Swal.fire({ title: 'Book Service', html: "

"+ swal_html +"

", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } return false; } }else{ if ($('#carmake_make').val() && $('#carmake_model').val() && $('#carmake_year').val() && $('#carmake_service_state').val() && $('#carmake_service_km').val()) { var rbc_custom = $('#carmake_series').val(); var makeName_custom = $('#carmake_make option:selected').text(); var modelName_custom = $('#carmake_model option:selected').text(); //makeName_global = $('#carmake_make option:selected').text(); //modelName_global = $('#carmake_model option:selected').text(); //year_global = $('#carmake_year option:selected').text(); state_global = $('#carmake_service_state').val(); km_global = $('#carmake_service_km').val(); seriesName_global = ($('#carmake_series option:selected').attr('data-seriesName') ? $('#carmake_series option:selected').attr('data-seriesName'):''); seriesModelYear_global = ($('#carmake_series option:selected').attr('data-seriesModelYear') ? $('#carmake_series option:selected').attr('data-seriesModelYear'):''); badgeName_global = ($('#carmake_series option:selected').attr('data-badgeName') ? $('#carmake_series option:selected').attr('data-badgeName'):''); badge2Name_global = ($('#carmake_series option:selected').attr('data-badge2Name') ? $('#carmake_series option:selected').attr('data-badge2Name'):''); doorNumber_global = ($('#carmake_series option:selected').attr('data-doorNumber') ? $('#carmake_series option:selected').attr('data-doorNumber'):''); bodyName_global = ($('#carmake_series option:selected').attr('data-bodyName') ? $('#carmake_series option:selected').attr('data-bodyName'):''); gearNumber_global = ($('#carmake_series option:selected').attr('data-gearNumber') ? $('#carmake_series option:selected').attr('data-gearNumber'):''); transmissionName_global = ($('#carmake_series option:selected').attr('data-transmissionName') ? $('#carmake_series option:selected').attr('data-transmissionName'):''); driveName_global = ($('#carmake_series option:selected').attr('data-driveName') ? $('#carmake_series option:selected').attr('data-driveName'):''); capacityDescription_global = ($('#carmake_series option:selected').attr('data-capacityDescription') ? $('#carmake_series option:selected').attr('data-capacityDescription'):''); cylinders_global = ($('#carmake_series option:selected').attr('data-cylinders') ? $('#carmake_series option:selected').attr('data-cylinders'):''); fuelName_global = ($('#carmake_series option:selected').attr('data-fuelName') ? $('#carmake_series option:selected').attr('data-fuelName'):''); ajax_data = [ {name: 'mode', value: 'getvehicledatabyrbc'} ,{name: 'rbc', value: rbc_custom} ,{name: 'makeName', value: makeName_custom} ,{name: 'modelName', value: modelName_custom} ,{name: 'state', value: state_global} ,{name: 'km', value: km_global} ]; } else { var swal_html = 'Please enter all the details'; if ($('#carmake_make').val() == "") { var swal_html = 'Please enter your car Make'; }else if ($('#carmake_model').val() == "") { var swal_html = 'Please enter your car Model'; }else if ($('#carmake_year').val() == "") { var swal_html = 'Please enter your car Year'; }else if ($('#carmake_series').val() == "") { var swal_html = 'Please enter your car Series'; }else if ($('#carmake_service_state').val() == "") { var swal_html = 'Please enter your car registration State'; }else if ($('#carmake_service_km').val() == "") { var swal_html = 'Please enter your current Kilometres travelled'; } if(swal_html){ Swal.fire({ title: 'Book Service', html: "

"+ swal_html +"

", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } return false; } } // Start Getting Data if (AjaxProcessing) { return false; } AjaxProcessing = true; var loadingText = 'Please wait...'; $('#btngetstarted').data('original-text', $('#btngetstarted').html()); $('#btngetstarted').html(loadingText); $.ajax({ type: "POST", url: '/service/book-service/getdata.php', data: ajax_data, dataType: 'JSON', cache: false, success: function (response) { //console.log(response); AjaxProcessing = false; $('#btngetstarted').html($('#btngetstarted').data('original-text')); if (response && response.result) { if (response.vehicle && Object.keys(response.vehicle).length > 0) { $.each(response.vehicle, function (vehicle_key, vehicle_obj) { if(makeName_global == ''){ makeName_global = vehicle_obj.make; modelName_global = vehicle_obj.model; year_global = vehicle_obj.year; seriesName_global = vehicle_obj.series; seriesModelYear_global = vehicle_obj.seriesmodelyear; badgeName_global = vehicle_obj.badge; badge2Name_global = vehicle_obj.badge2nd; doorNumber_global = vehicle_obj.doornum; bodyName_global = vehicle_obj.bodystyle; gearNumber_global = vehicle_obj.gearnum; transmissionName_global = vehicle_obj.geartype; driveName_global = vehicle_obj.drive; capacityDescription_global = vehicle_obj.enginedesc; cylinders_global = vehicle_obj.cylinders; fuelName_global = vehicle_obj.fueltype; old_diff_month_global = vehicle_obj.old_diff_month; redbookCode_global = vehicle_obj.rbc is_process_success = true; } }); } if (is_process_success) { $('#rego_display').html(rego_global); $('#rego_state_display').html(state_global); if(state_global == 'NSW'){ $('#background_fallback').css('background','#ff6'); $('#background_fallback').css('color','#000000'); $('#background_fallback').css('border','2px solid #000000'); $('#rego_fallback').css('border-color','#ff6'); $('.mark-background-fallback').css('background','#000000'); } else if(state_global == 'NT'){ $('#background_fallback').css('background','#fff'); $('#background_fallback').css('color','#c62b0c'); $('#background_fallback').css('border','2px solid #c62b0c'); $('#rego_fallback').css('border-color','#fff'); $('.mark-background-fallback').css('background','#c62b0c'); } else if(state_global == 'QLD'){ $('#background_fallback').css('background','#fff'); $('#background_fallback').css('color','#800000'); $('#background_fallback').css('border','2px solid #800000'); $('#rego_fallback').css('border-color','#fff'); $('.mark-background-fallback').css('background','#800000'); } else if(state_global == 'SA'){ $('#background_fallback').css('background','#fff'); $('#background_fallback').css('color','#000'); $('#background_fallback').css('border','2px solid #000'); $('#rego_fallback').css('border-color','#fff'); $('.mark-background-fallback').css('background','#000'); } else if(state_global == 'ACT'){ $('#background_fallback').css('background','#fff'); $('#background_fallback').css('color','#06c'); $('#background_fallback').css('border','2px solid #06c'); $('#rego_fallback').css('border-color','#fff'); $('.mark-background-fallback').css('background','#06c'); } else if(state_global == 'TAS' || state_global == 'VIC' || state_global == 'WA'){ $('#background_fallback').css('background','#fff'); $('#background_fallback').css('color','#039'); $('#background_fallback').css('border','2px solid #039'); $('#rego_fallback').css('border-color','#fff'); $('.mark-background-fallback').css('background','#039'); } $('.thatsmycar_div_vehicle_text').html('' + makeName_global + ' ' + modelName_global + ' ' + year_global + ' ' + bodyName_global + ''); $('#displaybox_description').html('' + makeName_global + ' ' + modelName_global + ' ' + year_global + ' ' + bodyName_global + '
(KM : ' + km_global + ')'); $('#displaybox_make').val(makeName_global); $('#displaybox_model').val(modelName_global); $('#displaybox_year').val(year_global); if(rego_global == null || rego_global == ''){ $('#displaybox_rego').val(temprego); }else{ $('#displaybox_rego').val(rego_global); } $('#displaybox_km').val(km_global); service_fixedprice_upsell_active = (response.fixedprice_upsell_active ? true : false); if(service_fixedprice_upsell_active){ service_fixedprice_upsell_data = response.fixedprice_upsell_data; if(response.fixedprice_upsell_msg){ service_fixedprice_upsell_msg = response.fixedprice_upsell_msg; } if(response.fixedprice_upsell_item_table){ $('.fixedprice_upsell_item_div').html(response.fixedprice_upsell_item_table); }else{ $('#servicetype-fixedprice-upsell-item-tab').remove(); } }else{ $('#servicetype-fixedprice-upsell-item-tab').remove(); } is_jarvis_used_cars_global = (response.is_jarvis_used_cars ? true : false); $('.servicetype_div .recommend_logbook_msg_div').hide(); //if(makeName_global.toLocaleLowerCase() == "subaru"){ // $('.servicetype_div .book_servicetype_fixedprice_div').remove(); //}else{ if(makeName_global.toLocaleLowerCase() == "ford" || makeName_global.toLocaleLowerCase() == "subaru" || makeName_global.toLocaleLowerCase() == "skoda" || makeName_global.toLocaleLowerCase() == "toyota" || makeName_global.toLocaleLowerCase() == "isuzu" || makeName_global.toLocaleLowerCase() == "suzuki" || makeName_global.toLocaleLowerCase() == "citroen" || makeName_global.toLocaleLowerCase() == "peugeot"){ if(old_diff_month_global && old_diff_month_global<=60){ if(!is_jarvis_used_cars_global){ $('.servicetype_div .book_servicetype_fixedprice_div').remove(); } }else if(old_diff_month_global && old_diff_month_global<=84){ $('.servicetype_div .recommend_logbook_msg_div').show(); } }else{ $('.servicetype_div .book_servicetype_logbook_div').remove(); } //} if($('input[name="book_servicetype"]').length < 2){ $('.diff_logbook_fps_msg_div').remove(); } if(old_diff_month_global && old_diff_month_global > 60){ $('.logbook_upsell_div .upsell_recommended_label').remove(); } is4by4_global = (response.is4by4 ? true : false); var packagenotregularprice_flag = false; if(service_4by4baseprice_model_data && Object.keys(service_4by4baseprice_model_data).length > 0){ $.each(service_4by4baseprice_model_data, function (key, obj) { if(modelName_global.toLocaleLowerCase() == obj.toLocaleLowerCase()){ packagenotregularprice_flag = true; } }); } if(makeName_global.toLocaleLowerCase() == "subaru" || packagenotregularprice_flag == true){ $('.packagenotregularprice').remove(); is4by4_global = false; }else{ if (is4by4_global == true) { $('.packageregularprice').remove(); }else{ $('.packagenotregularprice').remove(); } } $('.thatsmycar_div').show(); $('.vehicle_info_div').hide(); topFunction(); } else { var swal_html = 'Error in process'; if(swal_html){ Swal.fire({ title: 'Book Service', html: "

"+ swal_html +"

", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } } } else { // var swal_html = 'Oh No, looks like we could not find that registration. You can enter your vehicle manually or try again'; if(swal_html){ Swal.fire({ title: 'Book Service', html: "

"+ swal_html +"

", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } regosearch(false); topFunction(); } }, error: function () { AjaxProcessing = false; var swal_html = 'Error in process'; if(swal_html){ Swal.fire({ title: 'Book Service', html: "

"+ swal_html +"

", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } $('#btngetstarted').html($('#btngetstarted').data('original-text')); } }); }); $('#btnthatsmycar').click(function () { // if($('#book_servicetype_logbook').length>0){ // $('#book_servicetype_logbook').prop('checked',true); // selectservicetype('#book_servicetype_logbook'); // }else if($('#book_servicetype_fixedprice').length>0){ // $('#book_servicetype_fixedprice').prop('checked',true); // selectservicetype('#book_servicetype_fixedprice'); // } $('.book_service_form_div').show(); $('.thatsmycar_div').hide(); topFunction(); var history_data = {breadcrumbClass:'', currentTab:'servicetype-tab', previousTab:''}; var history_location = ('/service/book-service/?servicetype-tab'); window.history.pushState(history_data, null, history_location); myHistory_prev = []; myHistory_breadcrumb = []; if($('.servicetype_div .book_servicetype_fixedprice_div').length > 0 && $('.servicetype_div .book_servicetype_logbook_div').length == 0){ $('#book_servicetype_fixedprice').prop('checked',true); selectservicetype('#book_servicetype_fixedprice'); } }); }); function applyservicevoucher() { if (AjaxProcessing) { return false; } AjaxProcessing = true; $('.servicevouchermsgdiv').html(''); isVoucherApplied = false; book_voucher_code_global = ''; $('.displaybox_vouchercode').html(''); $('.book_voucher_code_div').hide(); if($('#book_voucher_code').val()){ $.ajax({ type: "POST", url: '/service/book-service/getdata.php', data: [{ name: 'mode', value: 'checkservicevoucher' }, { name: 'book_voucher_code', value: ($('#book_voucher_code').val() ? $('#book_voucher_code').val() : '') }], dataType: 'JSON', cache: false, success: function (response) { AjaxProcessing = false; if (response && response.message) { if (response.result) { $('.servicevouchermsgdiv').html(''); isVoucherApplied = true; book_voucher_code_global = ($('#book_voucher_code').val() ? $('#book_voucher_code').val() : ''); $('.displaybox_vouchercode').html(book_voucher_code_global); $('.book_voucher_code_div').show(); }else{ $('.servicevouchermsgdiv').html(''); } } }, error: function () { AjaxProcessing = false; $('.servicevouchermsgdiv').html(''); } }); } } function selectservicetype(obj){ book_servicetype_global = ($('input[name="book_servicetype"]:checked').attr('data-key') ? $('input[name="book_servicetype"]:checked').attr('data-key') : ''); $('.servicetype_div label.cell').removeClass('select'); $('input[name="book_preferred_location"]').prop("checked",false); get_book_service_preferred_dropoff_time(); if (book_servicetype_global) { $(obj).parent().parent('.cell').addClass('select'); } if ($('#tab_0_form').length > 0) { if(book_servicetype_global){ }else{ $('input[name="book_servicetype"]').prop('checked',false); } $('#tab_0_form').parsley().validate(); if ($('#tab_0_form').parsley().isValid()) { if(book_servicetype_global=="logbook"){ selected_fixedprice_upsell_global = false; $('input[name="fixedprice_upsell[]"]').prop("checked",false); if(is_xtime != false && makeName_global.toLocaleLowerCase() == "ford"){ logbook_xtime_log('ford', 'https://www.jarvisford.com.au/service-xtime/'); //window.location = "https://www.jarvisford.com.au/service-xtime/"; }else if(is_xtime != false && makeName_global.toLocaleLowerCase() == "subaru"){ $('#subaru_links_popup').modal('show'); }else if(is_xtime != false && makeName_global.toLocaleLowerCase() == "skoda"){ logbook_xtime_log('skoda', 'https://www.jarvisskoda.com.au/service/book-service/adelaide/'); //window.location = "https://www.jarvisskoda.com.au/service/book-service/adelaide/"; }else if(is_xtime != false && makeName_global.toLocaleLowerCase() == "toyota"){ logbook_xtime_log('toyota', 'https://jarvistoyota.dealer.toyota.com.au/service/booking/'); //window.location = "https://jarvistoyota.dealer.toyota.com.au/service/booking/"; }else{ selected_package_global = false; $('.package-button').parent('label').removeClass('btn-success active').addClass('btn-primary'); $('.package-button').prop('checked', false); $.each($('.package-button'), function (i, button_obj) { var packagename = ($(button_obj).data('packagename') ? $(button_obj).data('packagename') : 'Package'); var tempid = (isNaN(parseInt($(button_obj).val())) ? 0 : parseInt($(button_obj).val())); $('.package_button_text_'+tempid+'').html('Book ' + packagename); }); // //When peugeot & citroen then only display Adelaide Citroen : 25 && Adelaide Peugeot : 15 // //When isuzu & suzuki then only display Barossa : 11 // if(makeName_global.toLocaleLowerCase() == "peugeot" || makeName_global.toLocaleLowerCase() == "citroen"){ // $('.book_preferred_location_div').hide(); // $('.book_preferred_location_div_25').show(); // $('.book_preferred_location_div_15').show(); // }else if(makeName_global.toLocaleLowerCase() == "isuzu" || makeName_global.toLocaleLowerCase() == "suzuki"){ // $('.book_preferred_location_div').hide(); // $('.book_preferred_location_div_11').show(); // } showTabCustom('#servicetype-logbook-included-tab'); removeBreadcrumb('servicetype-logbook-included-breadcrumb', true); $('.dynamic_breadcrumb').append('
  • Package
  • '); var history_data = {breadcrumbClass:'servicetype-logbook-included-breadcrumb', currentTab:'servicetype-logbook-included-tab', previousTab:'servicetype-tab'}; var history_location = ('/service/book-service/?servicetype-logbook-included-tab'); myHistory.push({data:history_data,location:history_location}); window.history.pushState(history_data, null, history_location); myHistory_prev = []; myHistory_breadcrumb = []; } }else if(service_package_active && book_servicetype_global=="fixedprice"){ selected_upsell_global = false; $('input[name="logbook_upsell[]"]').prop("checked",false); showTabCustom('#servicetype-fixedprice-package-tab'); removeBreadcrumb('servicetype-fixedprice-package-breadcrumb', true); $('.dynamic_breadcrumb').append('
  • Package
  • '); var history_data = {breadcrumbClass:'servicetype-fixedprice-package-breadcrumb', currentTab:'servicetype-fixedprice-package-tab', previousTab:'servicetype-tab'}; var history_location = ('/service/book-service/?servicetype-fixedprice-package-tab'); myHistory.push({data:history_data,location:history_location}); window.history.pushState(history_data, null, history_location); myHistory_prev = []; myHistory_breadcrumb = []; }else { showTabCustom('#vehicle-detail-tab'); removeBreadcrumb('vehicle-detail-breadcrumb', true); $('.dynamic_breadcrumb').append('
  • Location and Time
  • '); var history_data = {breadcrumbClass:'vehicle-detail-breadcrumb', currentTab:'vehicle-detail-tab', previousTab:'servicetype-tab'}; var history_location = ('/service/book-service/?vehicle-detail-tab'); myHistory.push({data:history_data,location:history_location}); window.history.pushState(history_data, null, history_location); } fill_locations(); } } } function fill_locations(){ if(book_servicetype_global && makeName_global){ if (AjaxProcessing) { return false; } AjaxProcessing = true; $('.locationGroup_div').html(''); $.ajax({ type: "POST", url: '/service/book-service/getdata.php', data: [{ name: 'mode', value: 'getlocations' }, { name: 'book_servicetype', value: book_servicetype_global }, { name: 'makeName', value: makeName_global }], dataType: 'JSON', cache: false, success: function (response) { AjaxProcessing = false; if (response && response.result) { if (response.locations && Object.keys(response.locations).length > 0) { var str = '
    '; str += '
    '; $.each(response.locations, function (key, obj) { var locationAddress = (''+obj.locationAddress+', '+obj.locationSuburb+' '+obj.locationStateAbbr+', '+obj.locationPostCode+''); str += '
    '; str += '
    '; str += ' '; str += ' '; str += '
    '; str += '
    '; }); str += '
    '; str += ' '; str += '
    '; str += ''; $('.locationGroup_div').html(str); //destroy parsley $('#tab_2_form').parsley().destroy(); //reinitialize parsley $('#tab_2_form').parsley(); if(communityprogramID == 3){ //Somerton Park : 7 $('#book_preferred_location_7').prop('checked',true); selectlocation($('input[name="book_preferred_location"]:checked')); } } } else { var swal_html = response.message; if(swal_html){ Swal.fire({ title: 'Book Service', html: "

    "+ swal_html +"

    ", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } } }, error: function () { AjaxProcessing = false; var swal_html = 'Error in process'; if(swal_html){ Swal.fire({ title: 'Book Service', html: "

    "+ swal_html +"

    ", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } } }); } } function logbook_xtime_subaru_location(subaru_location, xtime_url){ if(subaru_location && xtime_url){ logbook_xtime_log(("subaru-" + subaru_location), xtime_url); } } function logbook_xtime_log(xtime_location, xtime_url){ if(xtime_location && xtime_url){ $.ajax({ type: "POST", url: '/service/book-service/getdata.php', data: [ {name: 'mode',value: 'setxtimelog'} , {name: 'xtime_location',value: xtime_location} , {name: 'xtime_url',value: xtime_url} , {name: 'url',value: CURRENT_URL} , {name: 'redbookCode',value: redbookCode_global} , {name: 'book_make',value: makeName_global} , {name: 'book_model',value: modelName_global} , {name: 'book_year',value: year_global} , {name: 'book_seriesName',value: seriesName_global} , {name: 'book_seriesModelYear',value: seriesModelYear_global} , {name: 'book_badgeName',value: badgeName_global} , {name: 'book_badge2Name',value: badge2Name_global} , {name: 'book_doorNumber',value: doorNumber_global} , {name: 'book_bodyName',value: bodyName_global} , {name: 'book_gearNumber',value: gearNumber_global} , {name: 'book_transmissionName',value: transmissionName_global} , {name: 'book_driveName',value: driveName_global} , {name: 'book_capacityDescription',value: capacityDescription_global} , {name: 'book_cylinders',value: cylinders_global} , {name: 'book_fuelName',value: fuelName_global} , {name: 'book_rego',value: rego_global} , {name: 'book_odometer',value: km_global} ], cache: false, success: function (response) { console.log(response); window.location = xtime_url; }, error: function () { window.location = xtime_url; } }); } } function servicetypeLogbookIncludedTabNext(){ if(service_upsell_active && $('#servicetype-logbook-upsell-item-tab').length>0){ showTabCustom('#servicetype-logbook-upsell-item-tab'); removeBreadcrumb('servicetype-logbook-upsell-item-breadcrumb', true); $('.dynamic_breadcrumb').append('
  • Preventive Maintenance Items
  • '); var history_data = {breadcrumbClass:'servicetype-logbook-upsell-item-breadcrumb', currentTab:'servicetype-logbook-upsell-item-tab', previousTab:'servicetype-logbook-included-tab'}; var history_location = ('/service/book-service/?servicetype-logbook-item-tab'); myHistory.push({data:history_data,location:history_location}); window.history.pushState(history_data, null, history_location); myHistory_prev = []; myHistory_breadcrumb = []; }else{ showTabCustom('#vehicle-detail-tab'); removeBreadcrumb('vehicle-detail-breadcrumb', true); $('.dynamic_breadcrumb').append('
  • Location and Time
  • '); var history_data = {breadcrumbClass:'vehicle-detail-breadcrumb', currentTab:'vehicle-detail-tab', previousTab:'servicetype-logbook-included-tab'}; var history_location = ('/service/book-service/?vehicle-detail-tab'); myHistory.push({data:history_data,location:history_location}); window.history.pushState(history_data, null, history_location); myHistory_prev = []; myHistory_breadcrumb = []; } } function selectLogbookUpsell(){ selected_upsell_global = false; if($('input[name="logbook_upsell[]"]').length>0){ if ($('input[name="logbook_upsell[]"]:checked') && Object.keys($('input[name="logbook_upsell[]"]:checked')).length > 0) { var temp_upsell_array=[]; $.each($('input[name="logbook_upsell[]"]:checked'), function (key, obj) { var tempid = (isNaN(parseInt($(obj).val())) ? 0 : parseInt($(obj).val())); if(tempid > 0){ if (service_upsell_data && Object.keys(service_upsell_data).length > 0) { $.each(service_upsell_data, function (key, obj) { var serviceUpsellID = parseInt(obj.serviceUpsellID); if(tempid == serviceUpsellID){ temp_upsell_array.push(obj); } }); } } }); selected_upsell_global = temp_upsell_array; } } } function servicetypeLogbookUpsellItemTabNext(){ showTabCustom('#vehicle-detail-tab'); removeBreadcrumb('vehicle-detail-breadcrumb', true); $('.dynamic_breadcrumb').append('
  • Location and Time
  • '); var history_data = {breadcrumbClass:'vehicle-detail-breadcrumb', currentTab:'vehicle-detail-tab', previousTab:'servicetype-logbook-upsell-item-tab'}; var history_location = ('/service/book-service/?vehicle-detail-tab'); myHistory.push({data:history_data,location:history_location}); window.history.pushState(history_data, null, history_location); myHistory_prev = []; myHistory_breadcrumb = []; } function selectServicePackage(obj){ selected_package_global = false; var selected_package_id = 0; var selected_packagename = 'Package'; if(obj && $(obj).length>0){ selected_packagename = ($(obj).data('packagename') ? $(obj).data('packagename') : 'Package'); if ($(obj).is(':checked')) { selected_package_id = (isNaN(parseInt($(obj).val())) ? 0 : parseInt($(obj).val())); if(selected_package_id > 0){ if (service_package_data && Object.keys(service_package_data).length > 0) { $.each(service_package_data, function (key, obj) { var servicePackageID = parseInt(obj.servicePackageID); if(selected_package_id == servicePackageID){ selected_package_global = obj; } }); } } } } $('.package-button').parent('label').removeClass('btn-success active').addClass('btn-primary'); $('.package-button').prop('checked', false); $.each($('.package-button'), function (i, button_obj) { var packagename = ($(button_obj).data('packagename') ? $(button_obj).data('packagename') : 'Package'); var tempid = (isNaN(parseInt($(button_obj).val())) ? 0 : parseInt($(button_obj).val())); $('.package_button_text_'+tempid+'').html('Book ' + packagename); }); if(selected_package_global && Object.keys(selected_package_global).length > 0){ $(obj).parent('label').removeClass('btn-primary').addClass('btn-success active'); $(obj).prop('checked', true); $('.package_button_text_'+selected_package_id+'').html('Booked ' + selected_packagename); if(service_fixedprice_upsell_active && $('#servicetype-fixedprice-upsell-item-tab').length>0){ showTabCustom('#servicetype-fixedprice-upsell-item-tab'); removeBreadcrumb('servicetype-fixedprice-upsell-item-breadcrumb', true); $('.dynamic_breadcrumb').append('
  • Preventive Maintenance Items
  • '); var history_data = {breadcrumbClass:'servicetype-fixedprice-upsell-item-breadcrumb', currentTab:'servicetype-fixedprice-upsell-item-tab', previousTab:'servicetype-fixedprice-package-tab'}; var history_location = ('/service/book-service/?servicetype-fixedprice-item-tab'); myHistory.push({data:history_data,location:history_location}); window.history.pushState(history_data, null, history_location); myHistory_prev = []; myHistory_breadcrumb = []; }else{ showTabCustom('#vehicle-detail-tab'); removeBreadcrumb('vehicle-detail-breadcrumb', true); $('.dynamic_breadcrumb').append('
  • Location and Time
  • '); var history_data = {breadcrumbClass:'vehicle-detail-breadcrumb', currentTab:'vehicle-detail-tab', previousTab:'servicetype-fixedprice-package-tab'}; var history_location = ('/service/book-service/?vehicle-detail-tab'); myHistory.push({data:history_data,location:history_location}); window.history.pushState(history_data, null, history_location); myHistory_prev = []; myHistory_breadcrumb = []; } }else{ var swal_html = 'Select One Package'; if(swal_html){ Swal.fire({ title: 'Book Service', html: "

    "+ swal_html +"

    ", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } } } function selectFixedPriceUpsell(){ selected_fixedprice_upsell_global = false; if($('input[name="fixedprice_upsell[]"]').length>0){ if ($('input[name="fixedprice_upsell[]"]:checked') && Object.keys($('input[name="fixedprice_upsell[]"]:checked')).length > 0) { var temp_fixedprice_upsell_array=[]; $.each($('input[name="fixedprice_upsell[]"]:checked'), function (key, obj) { var tempid = (isNaN(parseInt($(obj).val())) ? 0 : parseInt($(obj).val())); if(tempid > 0){ if (service_fixedprice_upsell_data && Object.keys(service_fixedprice_upsell_data).length > 0) { $.each(service_fixedprice_upsell_data, function (key, obj) { var serviceFixedPriceUpsellID = parseInt(obj.serviceFixedPriceUpsellID); if(tempid == serviceFixedPriceUpsellID){ temp_fixedprice_upsell_array.push(obj); } }); } } }); selected_fixedprice_upsell_global = temp_fixedprice_upsell_array; } } } function servicetypeFixedPriceUpsellItemTabNext(){ showTabCustom('#vehicle-detail-tab'); removeBreadcrumb('vehicle-detail-breadcrumb', true); $('.dynamic_breadcrumb').append('
  • Location and Time
  • '); var history_data = {breadcrumbClass:'vehicle-detail-breadcrumb', currentTab:'vehicle-detail-tab', previousTab:'servicetype-fixedprice-upsell-item-tab'}; var history_location = ('/service/book-service/?vehicle-detail-tab'); myHistory.push({data:history_data,location:history_location}); window.history.pushState(history_data, null, history_location); myHistory_prev = []; myHistory_breadcrumb = []; } function selectlocation(obj) { book_preferred_location_global = ($('input[name="book_preferred_location"]:checked').attr('data-bookingLocation') ? $('input[name="book_preferred_location"]:checked').attr('data-bookingLocation') : ''); book_preferred_locationID_global = ($('input[name="book_preferred_location"]:checked').attr('data-locationID') ? $('input[name="book_preferred_location"]:checked').attr('data-locationID') : ''); var book_preferred_location_locationAddress = ($('input[name="book_preferred_location"]:checked').attr('data-locationAddress') ? $('input[name="book_preferred_location"]:checked').attr('data-locationAddress') : ''); var book_preferred_location_mapLatitude = ($('input[name="book_preferred_location"]:checked').attr('data-mapLatitude') ? $('input[name="book_preferred_location"]:checked').attr('data-mapLatitude') : ''); var book_preferred_location_mapLongitude = ($('input[name="book_preferred_location"]:checked').attr('data-mapLongitude') ? $('input[name="book_preferred_location"]:checked').attr('data-mapLongitude') : ''); var book_preferred_location_googlePlaceID = ($('input[name="book_preferred_location"]:checked').attr('data-googlePlaceID') ? $('input[name="book_preferred_location"]:checked').attr('data-googlePlaceID') : ''); var book_preferred_location_name = ($('input[name="book_preferred_location"]:checked').val() ? $('input[name="book_preferred_location"]:checked').val() : ''); var book_preferred_location_locationURL = ('https://www.google.com/maps/place/'+book_preferred_location_locationAddress+''); if(book_preferred_location_mapLatitude && book_preferred_location_mapLongitude && book_preferred_location_googlePlaceID){ book_preferred_location_locationURL = ('https://www.google.com/maps/search/?api=1&query=' +book_preferred_location_mapLatitude+ ',' +book_preferred_location_mapLongitude+'&query_place_id=' +book_preferred_location_googlePlaceID+''); } var book_preferred_location_name_slug = $.trim(book_preferred_location_name.replace(/ /g, '').toLowerCase()); locationName = book_preferred_location_name_slug; if($('.location_dropoff_time_tr_' + book_preferred_location_name_slug +'').length>0){ $('.location_dropoff_time_tr').hide(); $('.location_dropoff_time_tr_' + book_preferred_location_name_slug +'').show(); } if(book_preferred_location_global){ $(".book_transportation_panel").show(); $(".book_preferred_date_panel").show(); window.scrollTo({top: $(".book_preferred_location_address_link").offset().top - 100,behavior: 'smooth'}); //window.scrollTo({top: $(".book_transportation_panel").offset().top - 100,behavior: 'smooth'}); } if(book_preferred_location_locationAddress){ var location_address_str = ''; location_address_str += '
    '; location_address_str += '
    '; location_address_str += '
    '; location_address_str += '

    '+ book_preferred_location_name +': '+book_preferred_location_locationAddress+'

    '; location_address_str += '
    '; location_address_str += '
    '; location_address_str += '
    '; location_address_str += '
    '; $('.book_preferred_location_address_link').html(location_address_str); setTimeout(function(){ initCustomMap(book_preferred_location_name, book_preferred_location_locationAddress, book_preferred_location_locationURL, book_preferred_location_mapLatitude,book_preferred_location_mapLongitude); }, 1000); }else{ $('.book_preferred_location_address_link').html(''); } checkLoanCarStatus(); book_preferred_date_picker(); } function get_book_service_preferred_dropoff_time() { var book_preferred_location_id = ($('input[name="book_preferred_location"]:checked').attr('id') ? $('input[name="book_preferred_location"]:checked').attr('id') : ''); var book_preferred_date = ($('#book_preferred_date').val() ? $('#book_preferred_date').val() : ''); $('.book_preferred_dropoff_time_div').html(''); if (book_preferred_location_global && book_preferred_locationID_global) { if (AjaxProcessing) { return false; } AjaxProcessing = true; $.ajax({ type: "POST", url: '/service/book-service/getdata.php', data: [{ name: 'mode', value: 'getdropofftime' }, { name: 'book_preferred_location', value: book_preferred_location_global }, { name: 'book_preferred_locationID', value: book_preferred_locationID_global }, { name: 'book_preferred_date', value: book_preferred_date }, { name: 'book_servicetype', value: book_servicetype_global }, { name: 'makeName', value: makeName_global }], dataType: 'JSON', cache: false, success: function (response) { AjaxProcessing = false; if (response && response.result) { book_preferred_location_global = response.book_preferred_location; book_preferred_locationID_global = response.book_preferred_locationID; $('#'+ book_preferred_location_id +'').attr('data-bookinglocation',book_preferred_location_global); $('#'+ book_preferred_location_id +'').attr('data-locationid',book_preferred_locationID_global); if (response.time && Object.keys(response.time).length > 0) { book_preferred_dropoff_time_setting(response.time, (response.loanCar ? response.loanCar : 0), (response.loanCarAvailable ? response.loanCarAvailable : 0), (response.loanCarNextDate ? response.loanCarNextDate : ''), (response.appointmentNextDate ? response.appointmentNextDate : ''), (response.loanCarAppointmentNextDate ? response.loanCarAppointmentNextDate : '')); } } else { var swal_html = response.message; if(swal_html){ Swal.fire({ title: 'Book Service', html: "

    "+ swal_html +"

    ", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } } }, error: function () { AjaxProcessing = false; var swal_html = 'Error in process'; if(swal_html){ Swal.fire({ title: 'Book Service', html: "

    "+ swal_html +"

    ", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } } }); } else { book_preferred_dropoff_time_setting(false,false,false,false,false,false); } } function book_preferred_dropoff_time_setting(booking_time_array, isloanCar, loanCarAvailable, loanCarNextDate, appointmentNextDate, loanCarAppointmentNextDate) { isloanCar_global = isloanCar; loanCarAvailable_global = loanCarAvailable; loanCarNextDate_global = loanCarNextDate; appointmentNextDate_global = appointmentNextDate; loanCarAppointmentNextDate_global = loanCarAppointmentNextDate; is_book_preferred_dropoff_time_available = false; $('.not_preferred_dropoff_time_div').html('').hide(); var time_array = []; var disabled_time = []; if (booking_time_array && Object.keys(booking_time_array).length > 0) { $.each(booking_time_array, function (time_key, time_obj) { time_array.push(time_key); if (time_obj && time_obj.remain == 0) { disabled_time.push(time_key); } }); }else{ time_array = ['07:30 am', '09:00 am', '10:30 am', '12:00 pm', '01:30 pm', '03:00 pm']; disabled_time =['07:30 am', '09:00 am', '10:30 am', '12:00 pm', '01:30 pm', '03:00 pm']; } var str = ''; if (time_array && Object.keys(time_array).length > 0) { $.each(time_array, function (key, option) { var is_disabled = false; if (disabled_time && Object.keys(disabled_time).length > 0) { if (disabled_time.indexOf(option) != -1) { is_disabled = true; } } if(!is_disabled){ str += '
    '; str += '
    '; str += ' '; str += '
    '; str += '
    '; } }); } if(str){ is_book_preferred_dropoff_time_available = true; str = '
    '+ str +'
    '; }else{ var str_msg = 'No Appointments are available for '+ ($('#book_preferred_date').val() ? Convert_YMD_to_DMY($('#book_preferred_date').val()) : 'selected date') +''; if(appointmentNextDate_global){ str_msg += ('
    Next available Appointment date is '+ Convert_YMD_to_DMY(appointmentNextDate_global) +''); } $('.not_preferred_dropoff_time_div').html(str_msg).show(); } $('.book_preferred_dropoff_time_div').html(str); //destroy parsley $('#tab_2_form').parsley().destroy(); //reinitialize parsley $('#tab_2_form').parsley(); checkLoanCarStatus(); } function selectTransportationOption(){ var book_transportationOption = ($('input[name="book_transportationOption"]:checked').attr('data-type') ? $('input[name="book_transportationOption"]:checked').attr('data-type') : ''); if (book_transportationOption == "loanCar") { //$('#book_loan_car_yes').val($('[name="book_transportationOption"]:checked').length > 0 ? "Yes" : "No"); console.log($('#book_loan_car_yes').val); is_book_loan_car_checked = true; $('.book_loan_car_mag_div').show(); }else{ is_book_loan_car_checked = false; $('.book_loan_car_mag_div').hide(); } checkLoanCarStatus(); } function checkLoanCarStatus(){ book_transportation_loancar_available_global = ''; $('.not_book_loan_car_div').html('').hide(); $('.loanCarAppointmentNextDate_div').html(''); $('.book_preferred_dropoff_time_div .cell label').removeClass('select'); $('.dropoff_time_input').removeAttr('checked'); $('.dropoff_time_label').removeClass('disabled'); $('.dropoff_time_input').attr('disabled',false); $('.time-overlay-loancar-msg .time-overlay-div').html('').hide(); if (is_book_loan_car_checked) { book_transportation_loancar_available_global = 'No'; if(loanCarAvailable_global && parseInt(loanCarAvailable_global) > 0){ if(isloanCar_global && parseInt(isloanCar_global) == 1){ book_transportation_loancar_available_global = 'Yes'; }else{ // Umesh $('.book_preferred_dropoff_time_div .cell label').removeClass('select'); $('.dropoff_time_label').addClass('disabled'); $('.dropoff_time_input').attr('disabled',true).attr('checked',false); $('.time-overlay-loancar-msg .time-overlay-div').html('No Loan Cars are available for '+ ($('#book_preferred_date').val() ? Convert_YMD_to_DMY($('#book_preferred_date').val()) : 'selected date') +'.
    Please select different date.
    ').show(); var str = ('No Loan Cars are available for '+ ($('#book_preferred_date').val() ? Convert_YMD_to_DMY($('#book_preferred_date').val()) : 'selected date') +''); if(loanCarNextDate_global){ //str += ('
    Next available Loan Car date is '+ Convert_YMD_to_DMY(loanCarNextDate_global) +''); } $('.not_book_loan_car_div').html(''+ str +'').show(); } } if(loanCarAppointmentNextDate_global && $('#book_preferred_date').val()){ if((Convert_YMD_to_DMY($('#book_preferred_date').val()) != Convert_YMD_to_DMY(loanCarAppointmentNextDate_global))){ $('.loanCarAppointmentNextDate_div').html('
    The next available Appointment date with a Loan Car is: '+ Convert_YMD_to_DMY(loanCarAppointmentNextDate_global) +'
    '); } } } if($.trim($('.not_book_loan_car_div').html()) == '' && $.trim($('.not_preferred_dropoff_time_div').html()) == ''){ $('.not_loancar_dropofftime_div').hide(); }else{ $('.not_loancar_dropofftime_div').show(); } $('.book_preferred_dropoff_time_selection_msg_div').html('
    Please select drop off time
    '); } function selectdropofftime(obj) { var book_preferred_dropoff_time = ($('input[name="book_preferred_dropoff_time"]:checked').val() ? $('input[name="book_preferred_dropoff_time"]:checked').val() : ''); $('.book_preferred_dropoff_time_div .cell label').removeClass('select'); if (book_preferred_dropoff_time) { $(obj).parent('label').addClass('select'); } if ($('#tab_2_form').length > 0) { if (book_preferred_location_global == "" || book_preferred_locationID_global == "") { window.scrollTo({top: $(".book_preferred_location_panel").offset().top - 100,behavior: 'smooth'}); var swal_html = 'Please select location for available dates'; if(swal_html){ Swal.fire({ title: 'Book Service', html: "

    "+ swal_html +"

    ", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } return false; } else if($('input[name="book_preferred_dropoff_time"]').length == 0){ window.scrollTo({top: $(".book_preferred_date_panel").offset().top - 100,behavior: 'smooth'}); var swal_html = 'Please select next available date'; if(swal_html){ Swal.fire({ title: 'Book Service', html: "

    "+ swal_html +"

    ", icon: 'error', heightAuto: false, allowOutsideClick: false, returnFocus: false }); } return false; }else{ $('#tab_2_form').parsley().validate(); if ($('#tab_2_form').parsley().isValid()) { $('.displaybox_make').html(makeName_global); $('.displaybox_model').html(modelName_global); $('.displaybox_year').html(year_global); if(rego_global == null || rego_global == ''){ $('.displaybox_rego').html(temprego); }else{ $('.displaybox_rego').html(rego_global); } $('.displaybox_km').html(km_global); $('.displaybox_desc').html('' + makeName_global + ' ' + modelName_global + ' ' + year_global + ' ' + bodyName_global + ''); $('.displaybox_servicetype').html($('input[name="book_servicetype"]:checked').val()); $('.displaybox_servicedate').html(($('#book_preferred_date').val() ? Convert_YMD_to_DMY($('#book_preferred_date').val()) : 'selected date')); $('.displaybox_servicetime').html($('input[name="book_preferred_dropoff_time"]:checked').val() ? $('input[name="book_preferred_dropoff_time"]:checked').val() : ''); $('.displaybox_servicelocation').html($('input[name="book_preferred_location"]:checked').val() ? $('input[name="book_preferred_location"]:checked').val() : ''); $('.service_transportation_div').html('').hide(); var str = ''; str += '

    Transportation: ' + ($('input[name="book_transportationOption"]:checked').val() ? $('input[name="book_transportationOption"]:checked').val() : '') + '

    '; if (is_book_loan_car_checked) { if(loanCarAvailable_global && parseInt(loanCarAvailable_global) > 0 && isloanCar_global && parseInt(isloanCar_global) == 1){ }else{ str += ''; } } $('.service_transportation_div').html(str).show(); $('.service_upsell_div').html('').hide(); $('.service_package_div').html('').hide(); if(service_package_active && book_servicetype_global=="fixedprice"){ if (selected_package_global && Object.keys(selected_package_global).length > 0) { var package_display_price = selected_package_global.packagePrice; global_price = selected_package_global.packagePrice; var packagenotregularprice_flag = false; if(service_4by4baseprice_model_data && Object.keys(service_4by4baseprice_model_data).length > 0){ $.each(service_4by4baseprice_model_data, function (key, obj) { if(modelName_global.toLocaleLowerCase() == obj.toLocaleLowerCase()){ packagenotregularprice_flag = true; } }); } if(makeName_global.toLocaleLowerCase() == "subaru" || packagenotregularprice_flag == true){ is4by4_global = false; }else{ if(is4by4_global){ package_display_price = selected_package_global.packagePrice4x4; global_price = selected_package_global.packagePrice4x4; } } var str = ''; str += '

    Package: ' + selected_package_global.packageName + ' ($' + package_display_price + ')

    '; str += ' '; if (selected_fixedprice_upsell_global && Object.keys(selected_fixedprice_upsell_global).length > 0) { str += '

    Service Items:

    '; str += ' '; } $('.service_package_div').html(str).show(); } }else if(book_servicetype_global=="logbook"){ var str = ''; str += '

    Service Items:

    '; str += ' '; $('.service_upsell_div').html(str).show(); } showTabCustom('#customer-detail-tab'); removeBreadcrumb('customer-detail-breadcrumb', true); $('.dynamic_breadcrumb').append('
  • My Details
  • '); var history_data = {breadcrumbClass:'customer-detail-breadcrumb', currentTab:'customer-detail-tab', previousTab:'vehicle-detail-tab'}; var history_location = ('/service/book-service/?customer-detail-tab'); myHistory.push({data:history_data,location:history_location}); window.history.pushState(history_data, null, history_location); myHistory_prev = []; myHistory_breadcrumb = []; } } } ecomList = { item_id : redbookCode_global, item_name : year_global + ' ' + makeName_global + ' ' + modelName_global, affiliation : locationName, coupon : book_voucher_code_global, currency : "AUD", discount : book_voucher_code_global, index : 0, item_brand : makeName_global, item_category : "Vehicles", item_category2 : bodyName_global, item_category3 : modelName_global, item_category4 : seriesName_global, item_category5 : fuelName_global, item_list_id : "Service_Booking", item_list_name : "Service_Booking", item_variant : badgeName_global, location_code : locationName, price : parseInt(global_price), quantity : 1, year : year_global, vehicle_type : "Used" }; } function topFunction() { window.scrollTo({top: 0,behavior: 'smooth'}); } function showTabCustom(tab_id) { if($(tab_id).length>0){ $('.tab').css("display", "none"); $(tab_id).css("display", "block"); topFunction(); } } function clickBreadcrumb(tab_id, classname) { showTabCustom(tab_id); removeBreadcrumb(classname, false); } function removeBreadcrumb(classname, is_current_remove){ var matched_breadcrumb = false; if(classname && $('.'+classname+'').length>0){ matched_breadcrumb = false; $.each($('.dynamic_breadcrumb.dynamic_breadcrumb_top li a'), function (breadcrumb_i, breadcrumb_obj) { if(matched_breadcrumb){ $(breadcrumb_obj).parent().remove(); } if($(breadcrumb_obj).hasClass(classname)){ matched_breadcrumb = true; if(is_current_remove){ $(breadcrumb_obj).parent().remove(); } } }); matched_breadcrumb = false; $.each($('.dynamic_breadcrumb.dynamic_breadcrumb_bottom li a'), function (breadcrumb_i, breadcrumb_obj) { if(matched_breadcrumb){ $(breadcrumb_obj).parent().remove(); } if($(breadcrumb_obj).hasClass(classname)){ matched_breadcrumb = true; if(is_current_remove){ $(breadcrumb_obj).parent().remove(); } } }); } } function hideLastBreadcrumb(classname){ if(classname && $('.'+classname+'').length>0){ var obj_current = $('.dynamic_breadcrumb li a.'+classname+'').parent(); if($(obj_current).length>0 && $(obj_current)[0]){ myHistory_breadcrumb.push($(obj_current)[0]); removeBreadcrumb(classname, true); } } } function showLastBreadcrumb(){ if (myHistory_breadcrumb.length > 0) { var breadcrumb_data = myHistory_breadcrumb.pop(); if(breadcrumb_data){ $('.dynamic_breadcrumb').append(breadcrumb_data); }else{ myHistory_breadcrumb.push(breadcrumb_data); } } } $(function () { window.history.replaceState(null, null, '/service/book-service/'); setTimeout(function() { window.addEventListener("popstate", checkState); }, 100); }); function checkState(event) { //console.log(event.state); if (event.state === null) { window.location = '/service/book-service/'; } else { var not_backpage = true; var breadcrumbClass = event.state.breadcrumbClass; var currentTab = event.state.currentTab; var previousTab = event.state.previousTab; //console.log('currentTab: ' + currentTab + ' | previousTab: ' + previousTab + ' | breadcrumbClass: ' + breadcrumbClass); if (myHistory.length > 0) { var history_data = myHistory.pop(); if(history_data.data.previousTab == currentTab){ myHistory_prev.push(history_data); showTabCustom('#'+history_data.data.previousTab+''); hideLastBreadcrumb(history_data.data.breadcrumbClass); not_backpage = false; }else{ myHistory.push(history_data); } } if(not_backpage){ if (myHistory_prev.length > 0) { var history_prev_data = myHistory_prev.pop(); if(history_prev_data.data.currentTab == currentTab){ myHistory.push(history_prev_data); showTabCustom('#'+currentTab+''); showLastBreadcrumb(); not_backpage = false; }else{ myHistory_prev.push(history_prev_data); } } } //console.log(not_backpage); if (not_backpage) { window.location = '/service/book-service/'; } } } function initCustomMap(locationName, locationAddress, locationURL, lat, long) { //custom map style - customise and change here: https://mapstyle.withgoogle.com var styledMapType = new google.maps.StyledMapType([ { "stylers": [ { "saturation": -25 } ] }, { "featureType": "poi.attraction", "stylers": [ { "visibility": "off" } ] }, { "featureType": "poi.business", "stylers": [ { "visibility": "off" } ] }, { "featureType": "poi.business", "elementType": "geometry.fill", "stylers": [ { "color": "#faf5eb" } ] }, { "featureType": "poi.government", "stylers": [ { "visibility": "off" } ] }, { "featureType": "poi.medical", "stylers": [ { "visibility": "off" } ] }, { "featureType": "poi.park", "elementType": "labels.icon", "stylers": [ { "visibility": "off" } ] }, { "featureType": "poi.park", "elementType": "labels.text", "stylers": [ { "visibility": "off" } ] }, { "featureType": "poi.place_of_worship", "stylers": [ { "visibility": "off" } ] }, { "featureType": "poi.school", "stylers": [ { "visibility": "off" } ] }, { "featureType": "poi.sports_complex", "stylers": [ { "visibility": "off" } ] }, { "featureType": "road", "elementType": "labels.icon", "stylers": [ { "visibility": "off" } ] }, { "featureType": "transit", "stylers": [ { "visibility": "off" } ] } ]); var myLatlng = new google.maps.LatLng(lat, long); /****** Info Window Contents *******/ var contentString = '
    '+ '
    '+ '
    '+ '

    '+locationName+'

    '+ '
    '+ '

    '+locationAddress+'

    '+ 'Get Directions'+ '
    '+ '
    '; var infowindow = new google.maps.InfoWindow({ content: contentString }); /****** Map Options *******/ var mapOptions = { zoom: 18, center: myLatlng, disableDefaultUI: true, zoomControl: true, }; var map = new google.maps.Map(document.getElementById('book_preferred_location_google_map'), mapOptions); /****** Map Marker Options *******/ var marker = new google.maps.Marker({ position: myLatlng, map: map, draggable: false, icon: '' + CDN_URL + 'img/icons/Jarvis_icon.png', animation: google.maps.Animation.DROP }); map.mapTypes.set('styled_map', styledMapType); map.setMapTypeId('styled_map'); /****** Info Window With Click *******/ google.maps.event.addListener(marker, 'click', function () { infowindow.open(map, marker); }); }