// 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,
},
});
},
SetColorMode: function (color_mode) {
WP_Adminify.ToggleSwitcher("color_mode", color_mode);
if (color_mode === "dark") {
window.AdminifyDarkMode.enable({ brightness: 120 });
$("body").removeClass("adminify-light-mode");
$("body").addClass("adminify-dark-mode");
$(".wp-adminify.adminify-dark-mode .logo-light").css("display", "none");
$(".wp-adminify.adminify-dark-mode .logo-dark").css("display", "block");
} else if (color_mode === "light") {
window.AdminifyDarkMode.disable();
$("body").removeClass("adminify-dark-mode");
$("body").addClass("adminify-light-mode");
$(".wp-adminify.adminify-light-mode .logo-light").css("display", "block");
$(".wp-adminify.adminify-light-mode .logo-dark").css("display", "none");
} else if (color_mode === "system") {
const isDark = window.matchMedia("(prefers-color-scheme: dark)").matches;
if (!!isDark) {
window.AdminifyDarkMode.enable({ brightness: 120 });
$("body").removeClass("adminify-light-mode");
$("body").addClass("adminify-dark-mode");
$(".wp-adminify.adminify-dark-mode .logo-light").css("display", "none");
$(".wp-adminify.adminify-dark-mode .logo-dark").css("display", "block");
} else {
window.AdminifyDarkMode.disable();
$("body").removeClass("adminify-dark-mode");
$("body").addClass("adminify-light-mode");
$(".wp-adminify.adminify-light-mode .logo-light").css("display", "block");
$(".wp-adminify.adminify-light-mode .logo-dark").css("display", "none");
}
}
},
// Light/Dark Mode
Color_Mode_Switcher: function () {
const adminifyUI = document.getElementById("light-dark-switcher-btn");
// const adminBarUI = document.getElementById("wp-adminify-mode-toogle-btn");
if (!!adminifyUI) {
$("#light-dark-switcher-btn").on("click", function () {
var color_mode = $("#light-dark-switcher-btn").is(":checked")
? "dark"
: "light";
WP_Adminify.SetColorMode(color_mode);
});
} else {
const lightBtn = document.querySelector(".light-dark-dropdown .light");
const darkBtn = document.querySelector(".light-dark-dropdown .dark");
const systemBtn = document.querySelector(".light-dark-dropdown .system");
const dropdown = document.querySelector(".light-dark-dropdown");
const modeIcon = document.querySelector(".mode-icon");
const lightIcon = document.querySelector(".mode-icon .lightIcon");
const darkIcon = document.querySelector(".mode-icon .darkIcon");
const systemIcon = document.querySelector(".mode-icon .systemIcon");
document.addEventListener("click", (event) => {
const isVisible = getComputedStyle(dropdown).visibility === "visible";
if (!dropdown.contains(event.target)) {
if (!!isVisible) {
dropdown.removeAttribute("style");
}
}
});
handleClick(modeIcon, () => {
setTimeout(() => {
dropdown.style.visibility = "visible";
dropdown.style.opacity = "0.9999";
dropdown.style.transform = "none";
}, 10);
});
handleClick(lightBtn, () => {
WP_Adminify.SetColorMode("light");
lightIcon.style.display = "block";
darkIcon.style.display = "none";
systemIcon.style.display = "none";
});
handleClick(darkBtn, () => {
WP_Adminify.SetColorMode("dark");
lightIcon.style.display = "none";
systemIcon.style.display = "none";
darkIcon.style.display = "block";
});
handleClick(systemBtn, () => {
WP_Adminify.SetColorMode("system");
systemIcon.style.display = "block";
lightIcon.style.display = "none";
darkIcon.style.display = "none";
});
/**
* Handle click
* @param {css selector} el
* @param {function} callback
* @returns
*/
function handleClick(el, callback) {
return el.addEventListener("click", callback);
}
}
},
// 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);