"use strict";App.Pages.Customers=function(){function display(customer){$id.val(customer.id),$firstName.val(customer.first_name),$lastName.val(customer.last_name),$email.val(customer.email),$phoneNumber.val(customer.phone_number),$address.val(customer.address),$city.val(customer.city),$zipCode.val(customer.zip_code),$notes.val(customer.notes),$timezone.val(customer.timezone),$language.val(customer.language||"english"),$ldapDn.val(customer.ldap_dn),$customField1.val(customer.custom_field_1),$customField2.val(customer.custom_field_2),$customField3.val(customer.custom_field_3),$customField4.val(customer.custom_field_4),$customField5.val(customer.custom_field_5),$customerAppointments.empty(),customer.appointments.length||$("
",{text:lang("no_records_found")}).appendTo($customerAppointments),customer.appointments.forEach(function(appointment){if((vars("role_slug")!==App.Layouts.Backend.DB_SLUG_PROVIDER||parseInt(appointment.id_users_provider)===vars("user_id"))&&(vars("role_slug")!==App.Layouts.Backend.DB_SLUG_SECRETARY||-1!==vars("secretary_providers").indexOf(appointment.id_users_provider))){var start=App.Utils.Date.format(moment(appointment.start_datetime).toDate(),vars("date_format"),vars("time_format"),!0),end=App.Utils.Date.format(moment(appointment.end_datetime).toDate(),vars("date_format"),vars("time_format"),!0);$("",{class:"appointment-row","data-id":appointment.id,html:[$("",{href:App.Utils.Url.siteUrl("calendar/reschedule/".concat(appointment.hash)),html:[$("",{class:"fas fa-edit me-1"}),$("",{text:appointment.service.name+" - "+appointment.provider.first_name+" "+appointment.provider.last_name}),$("
")]}),$("",{text:start}),$("
"),$("",{text:end}),$("
"),$("",{text:vars("timezones")[appointment.provider.timezone]})]}).appendTo("#customer-appointments")}})}function filter(keyword){var selectId=1"))}),response.length?response.length===filterLimit&&$("",{type:"button",class:"btn btn-outline-secondary w-100 load-more text-center",text:lang("load_more"),click:function click(){filterLimit+=20,App.Pages.Customers.filter(keyword,selectId,show)}}).appendTo("#filter-customers .results"):$filterCustomers.find(".results").append($("",{text:lang("no_records_found")})),selectId&&App.Pages.Customers.select(selectId,show)})}function select(id){var show=!!(1",{class:"customer-row entry","data-id":customer.id,html:[$("",{text:name}),$("
"),$("",{class:"text-muted",text:info}),$("
")]})},resetForm:function resetForm(){$customers.find(".record-details").find("input, select, textarea").val("").prop("disabled",!0),$customers.find(".record-details .form-label span").prop("hidden",!0),$customers.find(".record-details #timezone").val(vars("default_timezone")),$customers.find(".record-details #language").val(vars("default_language")),$customerAppointments.empty(),$customers.find("#edit-customer, #delete-customer").prop("disabled",!0),$customers.find("#add-edit-delete-group").show(),$customers.find("#save-cancel-group").hide(),$customers.find(".record-details .is-invalid").removeClass("is-invalid"),$customers.find(".record-details #form-message").hide(),$filterCustomers.find("button").prop("disabled",!1),$filterCustomers.find(".selected").removeClass("selected"),$filterCustomers.find(".results").css("color","")},display:display,select:select,addEventListeners:function addEventListeners(){$customers.on("submit","#filter-customers form",function(event){event.preventDefault();var key=$filterCustomers.find(".key").val();$filterCustomers.find(".selected").removeClass("selected"),filterLimit=20,App.Pages.Customers.resetForm(),App.Pages.Customers.filter(key)}),$customers.on("click",".customer-row",function(event){if(!$filterCustomers.find(".filter").prop("disabled")){var customerId=$(event.currentTarget).attr("data-id"),customer=filterResults.find(function(filterResult){return+filterResult.id===+customerId});display(customer),$("#filter-customers .selected").removeClass("selected"),$(event.currentTarget).addClass("selected"),$("#edit-customer, #delete-customer").prop("disabled",!1)}}),$customers.on("click","#add-customer",function(){App.Pages.Customers.resetForm(),$customers.find("#add-edit-delete-group").hide(),$customers.find("#save-cancel-group").show(),$customers.find(".record-details").find("input, select, textarea").prop("disabled",!1),$customers.find(".record-details .form-label span").prop("hidden",!1),$filterCustomers.find("button").prop("disabled",!0),$filterCustomers.find(".results").css("color","#AAA")}),$customers.on("click","#edit-customer",function(){$customers.find(".record-details").find("input, select, textarea").prop("disabled",!1),$customers.find(".record-details .form-label span").prop("hidden",!1),$customers.find("#add-edit-delete-group").hide(),$customers.find("#save-cancel-group").show(),$filterCustomers.find("button").prop("disabled",!0),$filterCustomers.find(".results").css("color","#AAA")}),$customers.on("click","#cancel-customer",function(){var id=$id.val();App.Pages.Customers.resetForm(),id&&select(id,!0)}),$customers.on("click","#save-customer",function(){var customer={first_name:$firstName.val(),last_name:$lastName.val(),email:$email.val(),phone_number:$phoneNumber.val(),address:$address.val(),city:$city.val(),zip_code:$zipCode.val(),notes:$notes.val(),timezone:$timezone.val(),language:$language.val()||"english",custom_field_1:$customField1.val(),custom_field_2:$customField2.val(),custom_field_3:$customField3.val(),custom_field_4:$customField4.val(),custom_field_5:$customField5.val(),ldap_dn:$ldapDn.val()};$id.val()&&(customer.id=$id.val()),App.Pages.Customers.validate()&&App.Pages.Customers.save(customer)}),$customers.on("click","#delete-customer",function(){var customerId=$id.val(),buttons=[{text:lang("cancel"),click:function click(event,messageModal){messageModal.hide()}},{text:lang("delete"),click:function click(event,messageModal){App.Pages.Customers.remove(customerId),messageModal.hide()}}];App.Utils.Message.show(lang("delete_customer"),lang("delete_record_prompt"),buttons)})}}}();