| Server IP : 35.201.19.92 / Your IP : 216.73.217.65 Web Server : nginx System : Linux pod-200961 6.8.0-1055-gke #61-Ubuntu SMP Tue May 26 22:57:42 UTC 2026 x86_64 User : fpm200098 ( 200098) PHP Version : 8.2.33 Disable Function : apache_child_terminate,apache_get_modules,apache_get_version,apache_getenv,apache_note,apache_setenv,disk_free_space,disk_total_space,diskfreespace,dl,exec,fastcgi_finish_request,link,opcache_compile_file,opcache_get_configuration,opcache_invalidate,opcache_is_script_cached,opcache_reset,passthru,pclose,pcntl_exec,popen,posix_getpid,posix_getppid,posix_getpwuid,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_uname,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,realpath_cache_get,shell_exec,show_source,symlink,system MySQL : OFF | cURL : ON | WGET : OFF | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /nas/content/live/questfamilyday/wp-content/mu-plugins/wpengine-common/js/ |
Upload File : |
jQuery(document).ready(function($) {
const SUCCESS = 'success';
const FAILURE = 'failure';
const RATE_LIMIT_REACHED = 'rate_limit_reached';
var ajaxCall = function(path, method, onSuccess, onError) {
jQuery.ajax({
type: method,
url: path,
headers: { 'X-WP-Nonce': wpApiSettings.nonce },
success: function(data) { onSuccess(data) },
error: function(error) { onError(error) },
});
};
var redirectToCacheTab = function($notification) {
var url = new URL($link.children().attr('href'));
url.searchParams.append('notification', $notification);
window.location.href = url.href;
};
var rateLimitStatusRequest = function(rateLimitStatusPath) {
return new Promise((resolve, reject) => {
ajaxCall( rateLimitStatusPath, 'POST',
(data) => {
if (data.success) {
resolve(data.rate_limit_expired);
} else {
reject();
}
},
() => {
reject();
});
});
};
var clearTheCachesAndRedirectToCacheTab = function(rateLimitExpired) {
const rootPath = wpApiSettings.root; // this root path contains the base api path for the REST Routes
const clearAllCachesPath = `${rootPath}${WPECachePluginRequest.clear_all_caches_path}`;
var success = function(data) {
if (data.success) {
redirectToCacheTab(SUCCESS);
} else {
redirectToCacheTab(FAILURE);
}
}
var failure = function(e) {
redirectToCacheTab(FAILURE);
}
if (rateLimitExpired) {
ajaxCall(
clearAllCachesPath,
'POST',
success,
failure
);
} else {
redirectToCacheTab(RATE_LIMIT_REACHED);
}
}
var listItemHandler = function(e) {
const rootPath = wpApiSettings.root; // this root path contains the base api path for the REST Routes
const rateLimitStatusPath = `${rootPath}${WPECachePluginRequest.rate_limit_status_path}`;
$link = $(this);
e.preventDefault();
jQuery('#wp-admin-bar-wpengine_adminbar').removeClass('hover');
rateLimitStatusRequest(rateLimitStatusPath)
.then(clearTheCachesAndRedirectToCacheTab)
.catch( function() {
redirectToCacheTab(FAILURE);
});
};
var listItem = document.getElementById('wp-admin-bar-wpengine_adminbar_cache');
if ( listItem ) {
listItem.onclick = listItemHandler;
}
});