// JS codes by WP Adminify (function($) { 'use strict'; // adminbar sticky class add/remove $(window).scroll(function() { var scroll = $(window).scrollTop(); if (scroll >= 1) { $(".adminify-top_bar").addClass("is-sticky"); } else { $(".adminify-top_bar").removeClass("is-sticky"); } }); // wp adminify adminbar menu displaying issue fixed START if (!$("#wp-admin-bar-top-secondary").length) { $("#wp-toolbar.quicklinks").append(` `) } // wp adminify adminbar menu displaying issue fixed END // Icon Class replaced when adminify_ui is disabled $("body:not(.adminify-ui) div[class*=' dashicons-adminify']").each( function() { var el_class = $(this).attr('class').replace("dashicons-before dashicons-adminify-", "adminify-menu-icon "); $(this).attr('class', el_class); } ); // scroll to top class added to body / its currently working for gravity form header window.addEventListener( 'scroll', function(e) { var distanceY = window.pageYOffset || document.documentElement.scrollTop, scrollTo = 40, header = document.querySelector("body"); if (distanceY > scrollTo) { header.classList.add("adminify-scrollto-sticky"); } else { if (header.classList.contains("adminify-scrollto-sticky")) { header.classList.remove("adminify-scrollto-sticky"); } } } ); // Folder div made full width and content placed to bottom if (window.matchMedia('(max-width: 500px)').matches) { setTimeout( () => { var folder_height = $(".wp-adminify--folder-app").height(); $('#wpbody-content').css('margin-top', (folder_height + 180)); }, 1500 ); } var adminHeight = $('.wp-adminify.adminify-top_bar').height(); $('.wp-adminify-admin-bar.position-bottom').css('padding-bottom', adminHeight * 1.25); // User Wrapper On / Off var openBtn = $(".wp-adminify--user--account"), colseBtn = $(".user-wrapper-close"), menu = $(".wp-adminify--user--wrapper"); // Open menu when click on menu button openBtn.on( "click", function(e) { menu.addClass("active"); } ); // Close menu when click on Close button colseBtn.on( "click", function() { menu.removeClass("active"); } ); // Close menu when click on anywhere on the document $(document).on( "click", function(e) { var target = $(e.target); if (target.is(".wp-adminify--user--wrapper *, .wp-adminify--user--wrapper, img.avatar.avatar-45.photo.is-rounded") === false) { menu.removeClass("active"); e.stopPropagation(); } } ); // Widget #dashboard_right_now count style jQuery("#dashboard_right_now li a").html( function() { var text = jQuery(this).text().trim().split(" "); var first = text.shift(); return (text.length > 0 ? "" + first + " " : first) + text.join(" "); } ); // Accordion jQuery(".accordion .accordion-body").css("display", "none"); jQuery('body').on( 'click', '.accordion-button, .accordion-opener', function(e) // jQuery(".accordion-button, .accordion-opener").on('click', function (e) { e.preventDefault(); jQuery(this).toggleClass('show'); var jQuerythis = jQuery(this); if (jQuerythis.next().hasClass('show')) { jQuerythis.next().removeClass('show'); jQuerythis.next().slideUp(100); } else { jQuerythis.parent().parent().find('.accordion-body').removeClass('show'); jQuerythis.parent().parent().find('.accordion-body').slideUp(100); jQuerythis.prev('.accordion-title').toggleClass('show'); jQuerythis.next().toggleClass('show'); jQuerythis.next().slideToggle(100); } } ); // Admin Columns Accordions $('.accordion-opener').on( 'click', function(e) { e.preventDefault(); let $this = $(this); if ($this.next().hasClass('show')) { $this.next().removeClass('show'); $this.next().slideUp(100); } else { $this.parent().parent().find('.accordion-body').removeClass('show'); $this.parent().parent().find('.accordion-body').slideUp(100); $this.prev('.accordion-title').toggleClass('show'); $this.next().toggleClass('show'); $this.next().slideToggle(100); } } ); $(window).on( 'load', function() { // WP_Adminify.animateCSS('body.wp-adminify', 'fadeIn'); // WP_Adminify.animateCSS('.my-element', 'fadeIn').then((message) => { // // Do something after the animation // }); // Circle Menu Functions var $circle_menu = $('#circle-menu'); var direction = 'left-half'; if ("undefined" != typeof WPAdminify_QuickMenu && WPAdminify_QuickMenu.is_rtl) { direction = 'right-half'; } $(".wp-adminify-loader").delay(300).fadeOut("slow"); if ($circle_menu.length) { $circle_menu.circleMenu({ direction: direction, trigger: 'hover', delay: 200 }).fadeIn("slow").show(); } // Adminbar Loader $(".wp-adminify-topbar-loader").delay(100).fadeOut("fast"); setTimeout(function() { $('.wp-adminify.adminify-top_bar').fadeIn('fast'); }, 100); // Menu Editor Preloader setTimeout(function() { $('.wp-adminify-menu-editor-loader').css({ 'display': 'none' }); }, 700) setTimeout(function() { $('.wp-adminify--menu--editor--settings').addClass('loaded'); }, 700); } ); // Google page speed origin on / off jQuery('.origin-summery-trigger button').on( 'click', function() { alert('clicked!'); jQuery('.result-body').toggleClass('show-origin'); } ); // Wrap content get extra margin if folder options exist jQuery('body').has('#wp-adminify--folder-app').addClass('has-folder-options'); // tippy('[data-tippy-content]'); // Admin Topbar Search function admin_top_search_hide_result() { $("#top-header-search-results").hide(); } function admin_top_search_show_result() { $("#top-header-search-results").show(); } $("#top-header-search-input").on( "input", function() { var search_val = $("#top-header-search-input").val(); admin_top_bar_search(search_val); if (!search_val.length) { admin_top_search_hide_result(); } } ); var cansearch; function admin_top_bar_search(searchTerm) { // Admin Bar Search if (cansearch == false) { return; } if (searchTerm == "") { return; } // var count_rows = $('#top-header-search-results .top-header-result-table > tbody > tr').length; // console.log(count_rows); // $("#top-header-search-results").css('display','block'); $.ajax({ url: WPAdminify.ajax_url, type: "post", data: { action: "adminify_all_search", security: WPAdminify.security_nonce, search: searchTerm }, beforeSend: function(xhr) { cansearch = false; }, success: function(response) { if (response) { var data = JSON.parse(response); // if (data.error) { // Toastr Code here // } else { admin_top_search_show_result(); $("#top-header-search-results .top-header-results-wrapper").html(data); // $("#top-header-search-results").show(); cansearch = true; // } } }, }); } var WP_Adminify = { ToggleSwitcher: function(key, value) { if (key == "") { return; } jQuery.ajax({ url: WPAdminify.ajax_url, type: "post", data: { action: "wp_adminify_color_mode", security: WPAdminify.security_nonce, key: key, value: value, } }); }, // Light/Dark Mode Color_Mode_Switcher: function() { $('#light-dark-switcher-btn').on( 'click', function() { var color_mode = $("#light-dark-switcher-btn").is(":checked") ? 'dark' : 'light'; WP_Adminify.ToggleSwitcher("color_mode", color_mode); if (color_mode === 'dark') { $("body").removeClass("adminify-light-mode"); $("body").addClass("adminify-dark-mode"); } else if (color_mode === 'light') { $("body").removeClass("adminify-dark-mode"); $("body").addClass("adminify-light-mode"); } } ); }, // Screens Tab Screen_Option_Switcher: function() { $('#screen-option-switcher-btn').on( 'click', function() { var screen_options_tab = $("#screen-option-switcher-btn").is(":checked") ? 1 : 0; WP_Adminify.ToggleSwitcher("screen_options_tab", screen_options_tab); if (screen_options_tab) { $('#screen-options-link-wrap').css('display', 'none'); } } ); }, // Help Tab Help_Tab: function() { $('#help-option-switcher-btn').on( 'click', function() { var adminify_help_tab = $("#help-option-switcher-btn").is(":checked") ? 1 : 0; WP_Adminify.ToggleSwitcher("adminify_help_tab", adminify_help_tab); if (adminify_help_tab) { $('#contextual-help-link-wrap').css('display', 'none'); } } ); }, // Hide WP Links Hide_WP_Links: function() { $('#hide-wp-links-switcher-btn').on( 'click', function() { var hide_wp_links = $("#hide-wp-links-switcher-btn").is(":checked") ? 1 : 0; WP_Adminify.ToggleSwitcher("hide_wp_links", hide_wp_links); } ); }, // Copy Active Plugins Copy_Active_Plugins: function(e) { e.preventDefault(); $('.adminify-copy-btn').copyToClipboard({ parent: '.adminify-server-info', content: '.adminify-active-plugins-data', onSuccess: function($element, source, selection) { $('span', $element).text($element.attr("data-text-copied")); setTimeout( function() { $('span', $element).text($element.attr("data-text")); }, 200000 ); } }); }, Dismiss_Notice: function() { $('div[data-dismissible] .notice-dismiss,div[data-dismissible] .adminify-notice-dismiss, div[data-dismissible] .dismiss-this').on( 'click', function(event) { event.preventDefault(); var $this = $(this); var attr_value, option_name, dismissible_length, data; attr_value = $this.closest("div[data-dismissible]").attr('data-dismissible').split('-'); // remove the dismissible length from the attribute value and rejoin the array. dismissible_length = attr_value.pop(); option_name = attr_value.join('-'); data = { 'action': 'adminify_dismiss_admin_notice', 'option_name': option_name, 'dismissible_length': dismissible_length, 'notice_nonce': WPAdminify.notice_nonce }; // We can also pass the url value separately from ajaxurl for front end AJAX implementations $.post(WPAdminify.ajax_url, data); $this.closest("div[data-dismissible]").hide('slow'); } ); }, animateCSS: function(element, animation, prefix = 'animate__') { // We create a Promise and return it new Promise( (resolve, reject) => { var animationName = `${prefix}${animation}`; var node = document.querySelector(element); node.classList.add(`${prefix}animated`, animationName); // When the animation ends, we clean the classes and resolve the Promise function handleAnimationEnd(event) { event.stopPropagation(); node.classList.remove(`${prefix}animated`, animationName); resolve('Animation ended'); } node.addEventListener('animationend', handleAnimationEnd, { once: true }); } ); }, VersionRollback: function() { $('select.wp-adminify-rollback-select').on( 'change', function() { var $this = $(this), $rollbackButton = $this.next('.wp-adminify-rollback-button'), placeholderText = $rollbackButton.data('placeholder-text'), placeholderUrl = $rollbackButton.data('placeholder-url'); $rollbackButton.html(placeholderText.replace('{VERSION}', $this.val())); $rollbackButton.attr('href', placeholderUrl.replace('VERSION', $this.val())); } ).trigger('change'); $('body').removeClass('wp-adminify--popup-show'); $('.wp-adminify-rollback-button').on( 'click', function(event) { event.preventDefault(); var $this = $(this); $('body').addClass('wp-adminify--popup-show'); $('.wp-adminify-dialog-ok').on( 'click', function(event) { event.preventDefault(); location.href = $this.attr('href'); } ); } ); }, }; // Documents Loaded $( function() { // Adminify vertical menu $('.adminify-accordion-v-menu #adminmenu .wp-submenu, .adminify-toggle-v-menu #adminmenu .wp-submenu').hide(); $('.adminify-accordion-v-menu .wp-adminify-active .wp-submenu').show(); $('.adminify-accordion-v-menu #adminmenu .wp-adminify-parent > a.menu-top, .adminify-toggle-v-menu #adminmenu .wp-adminify-parent > a.menu-top').data('href', $(this).attr('href')).removeAttr('href'); // Adminify Accordion type vertical menu $(".adminify-accordion-v-menu #adminmenu .wp-adminify-parent > a.menu-top").on( 'click', function(e) { $(this).each( function() { $(".wp_adminify_admin-menu ul").slideUp().parent('li.menu-top').removeClass('wp-adminify-active'); $(this).next().is(":visible") || $(this).next().slideDown().parent('li.menu-top').toggleClass('wp-adminify-active'); } ) e.stopPropagation() } ); // Adminify Toggle type vertical menu $(".adminify-toggle-v-menu #adminmenu .wp-adminify-parent > a.menu-top").on( 'click', function() { $(this).parent(".adminify-toggle-v-menu #adminmenu li.wp-adminify-parent").toggleClass('wp-adminify-active'); } ); // Extra space appears on Folder Widget in Horizontal Menu mode var hmenuHeight = $('.wp-adminify-horizontal-menu').height(); $('.wp-adminify.horizontal-menu.has-folder-options .wp-adminify--folder-widget').css('top', hmenuHeight * 1.05); function fixClasses() { var width = $(window).innerWidth(); if (width <= 767) { $('body').removeClass('folded auto-fold'); } if (width <= 1023 && width > 767) { $('body').addClass('folded'); } } fixClasses(); $(window).on( 'resize', function() { fixClasses(); } ); $('.navbar-brand .navbar-burger').on( 'click', function() { if ($(window).innerWidth() <= 767) { $('body').toggleClass('adminify-collapse-menu'); $('#adminmenumain').toggleClass('adminify-menu-expanded'); window.scrollTo(0, 0); } else { jQuery('#collapse-button').trigger('click'); } } ); // Range Slider // var textinput = $( ".range-value" ).val(); // var myslider = $( ".range-slider" ).slider({ // min: 0, // max: 900, // range: "min", // value: $(".range-value").val(), // slide: function( event, ui ) { // $(".range-value").val(ui.value); // } // }); // $( ".range-value" ).on( "keyup", function() { // myslider.slider( "value", this.value ); // }); // WP_Adminify.ToggleSwitcher(); WP_Adminify.Color_Mode_Switcher(); WP_Adminify.Screen_Option_Switcher(); WP_Adminify.Help_Tab(); WP_Adminify.Hide_WP_Links(); WP_Adminify.Dismiss_Notice(); WP_Adminify.VersionRollback(); // WP_Adminify.Copy_Active_Plugins(); // Copy to Clipboard Section (function(n) { n.fn.copyToClipboard = function(e) { var t = n.extend({ parent: "body", content: "", onSuccess: function() {}, onError: function() {} }, e ); return this.each( function() { var e = n(this); e.on( "click", function() { var n = e.parents(t.parent).find(t.content); var o = document.createRange(); var c = window.getSelection(); o.selectNodeContents(n[0]); c.removeAllRanges(); c.addRange(o); try { var r = document.execCommand("copy"); var a = r ? "onSuccess" : "onError"; t[a](e, n, c.toString()) } catch (i) {} c.removeAllRanges() } ); } ) } })(jQuery); $('.adminify-copy-btn').on( 'click', function(e) { e.preventDefault(); $('.adminify-copy-btn').copyToClipboard({ parent: '.adminify-server-info', content: '.adminify-active-plugins-data', onSuccess: function($element, source, selection) { $('span', $element).text($element.attr("data-text-copied")); setTimeout( function() { $('span', $element).text($element.attr("data-text")); }, 2000 ); } }); } ); if ($(window).innerWidth() <= 1200) { $('.adminify-search-expand').on( 'click', function() { $('.top-header--search--form').toggleClass('adminify-form-expand'); } ); } // betterlinks menu settings if (WPAdminify_ThirdParty.better_links.active === true) { var { menu_name, submenu_manage, submenu_name, submenu_settings } = WPAdminify_ThirdParty.better_links; if ($("body").hasClass("toplevel_page_betterlinks")) { if (menu_name) { $('.toplevel_page_betterlinks #toplevel_page_betterlinks .wp-menu-name').text(menu_name); } setTimeout( () => { if (menu_name) { $('.toplevel_page_betterlinks #toplevel_page_betterlinks .wp-submenu .wp-submenu-head').text(menu_name); } if (submenu_manage) { $('.toplevel_page_betterlinks #toplevel_page_betterlinks .wp-submenu li:nth-child(2) a').text(submenu_manage); } if (submenu_name) { $('.toplevel_page_betterlinks #toplevel_page_betterlinks .wp-submenu li:nth-child(3) a').text(submenu_name); } if (submenu_settings) { $('.toplevel_page_betterlinks #toplevel_page_betterlinks .wp-submenu li:nth-child(4) a').text(submenu_settings); } }, 500 ); } } } ); })(jQuery);