XylotrechusZ
var zooMegaMenu;!function(l,s){"use strict";var i;i=zooMegaMenu={init:function(){for(var e in i.$body=l("body"),i.$modal=l("#zoo-settings"),i.itemData={},i.templates={menus:s.template(l("#zoo-tmpl-menus").html()),title:s.template(l("#zoo-tmpl-title").html()),mega:s.template(l("#zoo-tmpl-mega").html()),background:s.template(l("#zoo-tmpl-background").html()),content:s.template(l("#zoo-tmpl-content").html())},i.frame=wp.media({library:{type:"image"}}),l(".menu-item .menu-item-handle").append('<span class="menu-item-edit"><a href="#" class="button button-primary menu-item-edit-button"><i class="dashicons dashicons-edit"></i> Edit</a>'),cleverMenuItems){if(cleverMenuItems.hasOwnProperty(e))"1"===cleverMenuItems[e].mega?l("#menu-item-"+e).addClass("mega-menu-item"):l("#menu-item-"+e).removeClass("mega-menu-item")}this.initActions()},initActions:function(){i.$body.on("click",".menu-item-edit .menu-item-edit-button",this.openModal),i.$body.on("click",".zoo-modal-backdrop, .zoo-modal-close, .zoo-button-cancel",this.closeModal),i.$body.on("change","input.zoo-enable-mega-menu",function(e){var t=l("#"+l(this).data("forMenuItem"));l(this).prop("checked")?t.addClass("mega-menu-item"):t.removeClass("mega-menu-item")}),i.$modal.on("click",".zoo-menu a",this.switchPanel).on("click",".zoo-column-handle",this.resizeMegaColumn).on("click",".zoo-button-save",this.saveChanges)},openModal:function(){return i.getItemData(this),i.$modal.show(),i.$body.addClass("modal-open"),i.render(),!1},closeModal:function(){return i.$modal.hide().find(".zoo-content").html(""),i.$body.removeClass("modal-open"),!1},switchPanel:function(e){e.preventDefault();var t=l(this),n=t.data("panel");t.addClass("active").siblings(".active").removeClass("active"),i.openSettings(n)},render:function(){i.$modal.find(".zoo-frame-menu .zoo-menu").html(i.templates.menus(i.itemData));var e=i.$modal.find(".zoo-menu a.active");this.openSettings(e.data("panel"))},openSettings:function(e){var t=i.$modal.find(".zoo-frame-content .zoo-content"),n=t.children("#zoo-panel-"+e);n.length?n.addClass("active").siblings().removeClass("active"):(void 0!==typeof i.templates[e]&&t.append(i.templates[e](i.itemData)),t.children("#zoo-panel-"+e).addClass("active").siblings().removeClass("active"),"mega"==e&&i.initMegaColumns(),"background"==e&&i.initBackgroundFields(),"content"==e&&i.initContentImageFields());var a=i.$modal.find(".zoo-frame-menu .zoo-menu a[data-panel="+e+"]").data("title");i.$modal.find(".zoo-frame-title").html(i.templates.title({title:a}))},resizeMegaColumn:function(e){e.preventDefault();var t,n=["25.00%","33.33%","50.00%","66.66%","75.00%","100.00%"],a=l(this),i=a.closest(".zoo-submenu-column"),o=i.data("width"),m=s.indexOf(n,o);-1!==m&&(t=a.hasClass("zoo-resizable-w")?m==n.length?m:m+1:0==m?m:m-1,i[0].style.width=n[t],i.data("width",n[t]),i.find(".menu-item-depth-0 .menu-item-width").val(n[t]))},initMegaColumns:function(){var e=i.$modal.find("#zoo-panel-mega .zoo-submenu-column"),n="25.00%";e.length&&(e.length<4&&(n=String((100/e.length).toFixed(2))+"%"),s.each(e,function(e){var t=e.dataset.width;t=t||n,e.style.width=t,e.dataset.width=t,l(e).find(".menu-item-depth-0 .menu-item-width").val(t)}))},initBackgroundFields:function(){i.$modal.find(".background-color-picker").wpColorPicker(),i.$modal.on("click",".background-image .upload-button",function(e){e.preventDefault();var t=l(this);i.frame.off("select"),i.frame.on("select",function(){var e=i.frame.state().get("selection").first().toJSON().url;t.siblings(".background-image-preview").html('<img src="'+e+'">'),t.siblings("input").val(e),t.siblings(".remove-button").removeClass("hidden")}),i.frame.open()}).on("click",".background-image .remove-button",function(e){e.preventDefault();var t=l(this);t.siblings(".background-image-preview").html(""),t.siblings("input").val(""),t.addClass("hidden")}),i.$modal.on("change",".background-position select",function(){var e=l(this);"custom"==e.val()?e.next("input").removeClass("hidden"):e.next("input").addClass("hidden")})},initContentImageFields:function(){i.$modal.on("click",".content-image .upload-button",function(e){e.preventDefault();var t=l(this);i.frame.off("select"),i.frame.on("select",function(){var e=i.frame.state().get("selection").first().toJSON().url;t.siblings(".content-image-preview").html('<img src="'+e+'">'),t.siblings("input").val(e),t.siblings(".remove-button").removeClass("hidden")}),i.frame.open()}).on("click",".content-image .remove-button",function(e){e.preventDefault();var t=l(this);t.siblings(".content-image-preview").html(""),t.siblings("input").val(""),t.addClass("hidden")})},getItemData:function(e){var t=l(e).closest("li.menu-item"),n=cleverMenuItems[t.attr("id").replace(/menu-item-/,"")],a=t.childMenuItems();i.itemData={depth:t.menuItemDepth(),megaData:{mega:n.mega,mega_width:n.megaWidth,width:n.width,background:n.background,contentImage:n.contentImage,hideText:n.hideText,hot:n.hot,new:n.new,trending:n.trending,disableLink:n.disableLink,content:n.content},data:t.getItemData(),children:[],originalElement:t.get(0)},s.isEmpty(a)||s.each(a,function(e){var t=l(e),n=cleverMenuItems[t.attr("id").replace(/menu-item-/,"")],a=t.menuItemDepth();i.itemData.children.push({depth:a,subDepth:a-i.itemData.depth-1,data:t.getItemData(),megaData:{mega:n.mega,mega_width:n.megaWidth,width:n.width,background:n.background,hideText:n.hideText,hot:n.hot,new:n.new,trending:n.trending,disableLink:n.disableLink,content:n.content},originalElement:e})})},setItemData:function(e,t,n){s.has(t,"mega")||(t.mega=!1),0==n&&(s.has(t,"hideText")||(t.hideText=!1),s.has(t,"hot")||(t.hot=!1),s.has(t,"trending")||(t.trending=!1),s.has(t,"new")||(t.new=!1));cleverMenuItems[l(e).attr("id").replace(/menu-item-/,"")];s.has(t,"content")&&delete t.content,cleverMenuItems[l(e).attr("id").replace(/menu-item-/,"")]=t},getFieldName:function(e,t){return"menu-item["+t+"]"+(e="["+(e=e.split(".")).join("][")+"]")},saveChanges:function(){var e=l("#menu, .zoo-content :input").serialize(),n=i.$modal.find(".zoo-toolbar .spinner");n.addClass("is-active"),l.post(ajaxurl,{action:"zoo_save_menu_item_data",data:e},function(e){if(e.success){var t=e.data["menu-item"];s.has(t,i.itemData.data["menu-item-db-id"])&&i.setItemData(i.itemData.originalElement,t[i.itemData.data["menu-item-db-id"]],0),s.each(i.itemData.children,function(e){s.has(t,e.data["menu-item-db-id"])&&i.setItemData(e.originalElement,t[e.data["menu-item-db-id"]],1)}),n.removeClass("is-active"),i.closeModal()}})}},l(function(){zooMegaMenu.init()})}(jQuery,_);