"use strict";App.Pages.ServiceCategories=function(){function filter(keyword){var selectId=1"))}),0===response.length?$("#filter-service-categories .results").append($("",{text:lang("no_records_found")})):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.ServiceCategories.filter(keyword,selectId,show)}}).appendTo("#filter-service-categories .results"),selectId&&select(selectId,show)})}function remove(id){App.Http.ServiceCategories.destroy(id).then(function(){App.Layouts.Backend.displayNotification(lang("service_category_deleted")),App.Pages.ServiceCategories.resetForm(),App.Pages.ServiceCategories.filter($("#filter-service-categories .key").val())})}function display(serviceCategory){$id.val(serviceCategory.id),$name.val(serviceCategory.name),$description.val(serviceCategory.description)}function validate(){$serviceCategories.find(".is-invalid").removeClass("is-invalid"),$serviceCategories.find(".form-message").removeClass("alert-danger").hide();try{var missingRequired=!1;if($serviceCategories.find(".required").each(function(index,fieldEl){$(fieldEl).val()||($(fieldEl).addClass("is-invalid"),missingRequired=!0)}),missingRequired)throw new Error(lang("fields_are_required"));return!0}catch(error){return $serviceCategories.find(".form-message").addClass("alert-danger").text(error.message).show(),!1}}function select(id){var show=!!(1",{class:"service-category-row entry","data-id":serviceCategory.id,html:[$("",{text:serviceCategory.name}),$("
")]})},resetForm:function resetForm(){$filterServiceCategories.find(".selected").removeClass("selected"),$filterServiceCategories.find("button").prop("disabled",!1),$filterServiceCategories.find(".results").css("color",""),$serviceCategories.find(".add-edit-delete-group").show(),$serviceCategories.find(".save-cancel-group").hide(),$serviceCategories.find(".record-details").find("input, select, textarea").val("").prop("disabled",!0),$serviceCategories.find(".record-details .form-label span").prop("hidden",!0),$("#edit-service-category, #delete-service-category").prop("disabled",!0),$serviceCategories.find(".record-details .is-invalid").removeClass("is-invalid"),$serviceCategories.find(".record-details .form-message").hide()},display:display,select:select,addEventListeners:function addEventListeners(){$serviceCategories.on("submit","#filter-service-categories form",function(event){event.preventDefault();var key=$("#filter-service-categories .key").val();$(".selected").removeClass("selected"),App.Pages.ServiceCategories.resetForm(),App.Pages.ServiceCategories.filter(key)}),$serviceCategories.on("click",".service-category-row",function(event){if($("#filter-service-categories .filter").prop("disabled"))return void $("#filter-service-categories .results").css("color","#AAA");var serviceCategoryId=$(event.currentTarget).attr("data-id"),serviceCategory=filterResults.find(function(filterResult){return+filterResult.id===+serviceCategoryId});display(serviceCategory),$("#filter-service-categories .selected").removeClass("selected"),$(event.currentTarget).addClass("selected"),$("#edit-service-category, #delete-service-category").prop("disabled",!1)}),$serviceCategories.on("click","#add-service-category",function(){App.Pages.ServiceCategories.resetForm(),$serviceCategories.find(".add-edit-delete-group").hide(),$serviceCategories.find(".save-cancel-group").show(),$serviceCategories.find(".record-details").find("input, select, textarea").prop("disabled",!1),$serviceCategories.find(".record-details .form-label span").prop("hidden",!1),$filterServiceCategories.find("button").prop("disabled",!0),$filterServiceCategories.find(".results").css("color","#AAA")}),$serviceCategories.on("click","#edit-service-category",function(){$serviceCategories.find(".add-edit-delete-group").hide(),$serviceCategories.find(".save-cancel-group").show(),$serviceCategories.find(".record-details").find("input, select, textarea").prop("disabled",!1),$serviceCategories.find(".record-details .form-label span").prop("hidden",!1),$filterServiceCategories.find("button").prop("disabled",!0),$filterServiceCategories.find(".results").css("color","#AAA")}),$serviceCategories.on("click","#delete-service-category",function(){var serviceCategoryId=$id.val(),buttons=[{text:lang("cancel"),click:function click(event,messageModal){messageModal.hide()}},{text:lang("delete"),click:function click(event,messageModal){remove(serviceCategoryId),messageModal.hide()}}];App.Utils.Message.show(lang("delete_service_category"),lang("delete_record_prompt"),buttons)}),$serviceCategories.on("click","#save-service-category",function(){var serviceCategory={name:$name.val(),description:$description.val()};""!==$id.val()&&(serviceCategory.id=$id.val()),validate()&&App.Pages.ServiceCategories.save(serviceCategory)}),$serviceCategories.on("click","#cancel-service-category",function(){var id=$id.val();App.Pages.ServiceCategories.resetForm(),""!==id&&select(id,!0)})}}}();