oont-contents/plugins/astra-addon/addons/nav-menu/assets/js/minified/megamenu-options.min.js
2025-02-08 15:10:23 +01:00

1 line
No EOL
4 KiB
JavaScript

function menuSettingsEventClick(){let n=document.querySelector(".ast-offcanvas-wrapper");document.addEventListener("click",function(e){var t,a,i;e.target.matches(".astra-megamenu-opts-btn")&&(t=e.target.closest(".menu-item").classList.value).includes("menu-item-depth-")&&(t=t.split("menu-item-depth-")[1].split("")[0],a=e.target.getAttribute("data-menu-title"),e=e.target.getAttribute("data-menu-id"),i=document.querySelector("#nav-menu-meta-object-id").getAttribute("value"),t)&&a&&e&&i&&(document.dispatchEvent(new CustomEvent("astra_mega_menu_event",{detail:{menu_depth:t,menu_name:a,menu_id:e,navId:i}})),n.classList.contains("active")||n.classList.add("active"))})}function onColorReady(){jQuery(document).mouseup(function(e){var t=jQuery(".ast-color"),a=t.find(".astra-color-picker-wrap"),i=t.find(".ast-color-btn-reset-wrap");a.is(e.target)||i.is(e.target)||0!==a.has(e.target).length||0!==i.has(e.target).length||t.find(".components-button.astra-color-icon-indicate.open").click()})}document.addEventListener("DOMContentLoaded",()=>{menuSettingsEventClick()}),(n=>{function i(){var a=n(this).closest(".widget"),t=a.find(".widget-inner"),i=a.attr("id"),e=(a.toggleClass("menu-item-edit-active"),{action:"ast_edit_widget",widget_id:i,security_nonce:AstraBuilderMegaMenu.nonceWidget});a.hasClass("open")||a.data("loaded")?a.toggleClass("open"):n.post(ajaxurl,e,function(e){DOMPurify.addHook("afterSanitizeAttributes",e=>{"INPUT"===e.nodeName&&e?.hasAttribute("value")&&"ast_save_widget"===e?.getAttribute("value")&&e?.setAttribute("name","action")}),t.html(DOMPurify.sanitize(e.data)),a.data("loaded",!0).toggleClass("open"),a.is("[id*=black-studio-tinymce]")&&bstw(a).deactivate().activate(),setTimeout(function(){n(document).trigger("widget-added",[a])},100),a.find(".delete").on("click",function(e){e.preventDefault();e={action:"ast_delete_widget",widget_id:i,security_nonce:AstraBuilderMegaMenu.nonceWidget};n.post(ajaxurl,e,function(e){a.remove(),n("#mega-menu-submit").removeClass("ast-disabled")})}),a.find(".close").on("click",function(e){e.preventDefault(),a.toggleClass("open")}),a.find(".ast-save-widget").on("click",function(e){e.preventDefault();var e=a.find("form").serialize(),t=n(this);t.attr("disabled","disabled"),a.find(".spinner").css("visibility","visible"),n.post(ajaxurl,e,function(e){a.find(".spinner").css("visibility","hidden"),t.removeAttr("disabled"),n("#mega-menu-submit").removeClass("ast-disabled")})})})}document.addEventListener("astra_mega_menu_loaded",function(e){{e=e.detail.menu_id;let a=n(".astra-mm-options-wrap");e={action:"ast_render_widgets",menu_item_id:e,security_nonce:AstraBuilderMegaMenu.nonceWidget},n.post(ajaxurl,e,function(e){var t=e.data.html;e.data.has_widgets&&n(".ast-widget-list").show(),a.find(".ast-widget-list").html(DOMPurify.sanitize(t)),n("#ast-widget-sortable").sortable({change:function(e,t){n("#mega-menu-submit").removeClass("ast-disabled")}}),n("#ast-widget-sortable").disableSelection(),n(".widget-action").off(),n(".widget-action").on("click",i)})}n(".astra-mm-options-wrap").find(".ast-select2-container").astselect2({placeholder:astMegamenuVars.select2_placeholder,ajax:{url:ajaxurl,dataType:"json",method:"post",delay:250,data:function(e){return{q:e.term,page:e.page,action:"ast_get_posts_list",nonce:astRules.ajax_nonce}},processResults:function(e){return n("#mega-menu-submit").removeClass("ast-disabled"),{results:e}},cache:!0},minimumInputLength:2,language:astRules.ast_lang}),onColorReady()}),document.addEventListener("astra_mega_menu_widget_event",function(e){var t,a;e=e.detail.menu_id,t=n(".ast-select-widget").val(),a=n(".astra-mm-options-wrap"),""!=t&&(n(".ast-widget-list").show(),t={action:"ast_add_widget",widget_id:t,menu_item_id:e,title:n(".ast-select-widget").find("option:selected").text(),security_nonce:AstraBuilderMegaMenu.nonceWidget},n.post(ajaxurl,t,function(e){n(e.data)?.each((e,t)=>a.find(".ast-widget-list").append(DOMPurify.sanitize(t))),n(".widget-action").off(),n(".widget-action").on("click",i),n("#mega-menu-submit").removeClass("ast-disabled")}))})})(jQuery);