PluginProbe ʕ •ᴥ•ʔ
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization / 1.15.1
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization v1.15.1
1.19.8 1.19.7 1.19.6 1.19.5 trunk 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.12.0 1.13.0 1.14.0 1.15.0 1.15.1 1.15.2 1.15.3 1.16.0 1.16.1 1.16.2 1.16.3 1.16.4 1.16.5 1.16.6 1.16.7 1.16.8 1.17.0 1.17.6 1.17.7 1.17.8 1.17.9 1.18.0 1.18.1 1.18.2 1.18.3 1.18.4 1.18.5 1.18.6 1.18.7 1.18.8 1.18.9 1.19.0 1.19.1 1.19.2 1.19.3 1.19.4 1.3.19 1.3.20 1.4.0 1.4.1 1.5.0 1.5.1 1.5.10 1.5.11 1.5.12 1.5.13 1.5.14 1.5.15 1.5.16 1.5.17 1.5.18 1.5.19 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.7.0 1.7.1 1.8.0 1.8.1 1.8.3 1.9.0 1.9.1 1.9.2
nitropack / view / javascript / np_settings.js
nitropack / view / javascript Last commit date
admin_bar_menu.js 2 years ago flowbite.min.js 2 years ago gravity_forms.js 3 years ago math_captcha.js 3 years ago metabox.js 2 years ago nitropackUI.js 2 years ago np_notices.js 2 years ago np_safemode.js 2 years ago np_settings.js 2 years ago popper.min.js 4 years ago widgets_ajax.js 3 years ago
np_settings.js
154 lines
1 jQuery(document).ready(function ($) {
2 class nitropackSettings {
3 constructor() {
4 this.enabled_settings = [];
5 this.cacheWarmUp();
6 }
7 cacheWarmUp() {
8 const setting_id = '#warmup-status',
9 msg_wrapper = $('#loading-warmup-status'),
10 msg_icon = msg_wrapper.find('.icon'),
11 msg_text = msg_wrapper.find('.msg'),
12 nitroSelf = this;
13
14 $(setting_id).change(function () {
15 if ($(this).is(':checked')) {
16 estimateWarmup();
17 } else {
18 disableWarmup();
19 }
20 });
21 var disableWarmup = () => {
22 $.post(ajaxurl, {
23 action: 'nitropack_disable_warmup',
24 nonce: np_settings.nitroNonce
25 }, function (response) {
26 var resp = JSON.parse(response);
27 if (resp.type == "success") {
28 nitroSelf.removeElement(nitroSelf.enabled_settings, 'cacheWarmUp');
29 NitropackUI.triggerToast('success', np_settings.success_msg);
30 } else {
31 NitropackUI.triggerToast('error', np_settings.error_msg);
32 }
33 });
34 }
35
36 var estimateWarmup = (id, retry) => {
37 id = id || null;
38 retry = retry || 0;
39 msg_wrapper.removeClass('hidden');
40 if (!id) {
41 msg_text.text(np_settings.est_cachewarmup_msg);
42 $.post(ajaxurl, {
43 action: 'nitropack_estimate_warmup',
44 nonce: np_settings.nitroNonce
45 }, function (response) {
46 var resp = JSON.parse(response);
47 if (resp.type == "success") {
48 setTimeout((function (id) {
49 estimateWarmup(id);
50 })(resp.res), 1000);
51 } else {
52 $(setting_id).prop("checked", true);
53 msg_text.text(resp.message);
54
55 msg_icon.attr('src', np_settings.nitro_plugin_url + '/view/images/info.svg');
56 setTimeout(function () {
57 msg_wrapper.addClass('hidden');
58 }, 3000);
59
60 }
61 });
62 } else {
63 $.post(ajaxurl, {
64 action: 'nitropack_estimate_warmup',
65 estId: id,
66 nonce: np_settings.nitroNonce
67 }, function (response) {
68 var resp = JSON.parse(response);
69 if (resp.type == "success") {
70 if (isNaN(resp.res) || resp.res == -1) { // Still calculating
71 if (retry >= 10) {
72 $(setting_id).prop("checked", false);
73 msg_icon.attr('src', np_settings.nitro_plugin_url + '/view/images/info.svg');
74 msg_text.text(resp.message);
75
76 setTimeout(function () {
77 msg_wrapper.addClass('hidden');
78 }, 3000);
79 } else {
80 setTimeout((function (id, retry) {
81 estimateWarmup(id, retry);
82 })(id, retry + 1), 1000);
83 }
84 } else {
85 if (resp.res == 0) {
86 $(setting_id).prop("checked", false);
87 msg_icon.attr('src', np_settings.nitro_plugin_url + '/view/images/info.svg');
88 msg_text.text(resp.message);
89 setTimeout(function () {
90 msg_wrapper.addClass('hidden');
91 }, 3000);
92 } else {
93 enableWarmup();
94 }
95 }
96 } else {
97 msg_text.text(resp.message);
98 setTimeout(function () {
99 msg_wrapper.addClass('hidden');
100 }, 3000);
101 }
102 });
103 }
104 }
105 var enableWarmup = () => {
106 $.post(ajaxurl, {
107 action: 'nitropack_enable_warmup',
108 nonce: np_settings.nitroNonce
109 }, function (response) {
110 var resp = JSON.parse(response);
111 if (resp.type == "success") {
112 nitroSelf.enabled_settings.push('cacheWarmUp');
113 $(setting_id).prop("checked", true);
114 msg_wrapper.addClass('hidden');
115 NitropackUI.triggerToast('success', np_settings.success_msg);
116 } else {
117 setTimeout(enableWarmup, 1000);
118 }
119 });
120 }
121
122 var loadWarmupStatus = function () {
123 $.ajax({
124 url: ajaxurl,
125 type: "POST",
126 data: {
127 action: "nitropack_warmup_stats",
128 nonce: np_settings.nitroNonce
129 },
130 dataType: "json",
131 success: function (resp) {
132 if (resp.type == "success") {
133
134 nitroSelf.enabled_settings.push('cacheWarmUp');
135 $(setting_id).prop("checked", !!resp.stats.status);
136 msg_wrapper.addClass('hidden');
137 } else {
138 setTimeout(loadWarmupStatus, 500);
139 }
140 }
141 });
142 }
143
144 loadWarmupStatus();
145 }
146 removeElement(array, value) {
147 const index = array.indexOf(value);
148 if (index !== -1) {
149 array.splice(index, 1);
150 }
151 }
152 }
153 const NitroPackSettings = new nitropackSettings();
154 });