PluginProbe
WebberZone Top 10 — Popular Posts / 4.5.1
WebberZone Top 10 — Popular Posts v4.5.1
4.5.1 4.5.0 4.4.3 4.4.2 4.4.1 4.4.0 4.3.4 4.3.3 4.3.2 4.3.1 4.3.0 trunk 1.0 1.0.1 1.1 1.2 1.3 1.4 1.4.1 1.5 1.5.1 1.5.2 1.5.3 1.6 1.6.1 All 117 releases
← All changes | includes/admin/js/admin-scripts.js +49 -5 4.4.3 → 4.5.1 View file →
@@ -1,21 +1,27 @@
1 1 jQuery(document).ready(function ($) {
2 2
3 3 $('button[name="tptn_cache_clear"]').on('click', function () {
4 - if (confirm(top_ten_admin_data.strings.confirm_message)) {
5 - var $button = $(this);
4 + var $button = $(this);
5 + var networkWide = '1' === $button.attr('data-network-wide');
6 + var confirmMessage = networkWide && top_ten_admin_data.strings.network_confirm_message
7 + ? top_ten_admin_data.strings.network_confirm_message
8 + : top_ten_admin_data.strings.confirm_message;
9 +
10 + if (confirm(confirmMessage)) {
6 11 var originalText = $button.text();
7 12 var clearingText = top_ten_admin_data.strings.clearing_text ? top_ten_admin_data.strings.clearing_text : 'Clearing...';
8 13 $button.prop('disabled', true).text(clearingText).append(' <span class="spinner is-active"></span>');
9 - clearCache($button, originalText);
14 + clearCache($button, originalText, networkWide);
10 15 }
11 16 });
12 17
13 18 // Function to clear the cache.
14 - function clearCache($button, originalText) {
19 + function clearCache($button, originalText, networkWide) {
15 20 $.post(ajaxurl, {
16 21 action: 'tptn_clear_cache',
17 - security: top_ten_admin_data.security
22 + security: top_ten_admin_data.security,
23 + network_wide: networkWide ? '1' : '0'
18 24 }, function (response) {
19 25 if (response.success) {
20 26 alert(response.data.message);
21 27 } else {
@@ -235,8 +241,45 @@
235 241 });
236 242
237 243 $(function () {
238 244 var $tabsContainer = $("#dashboard-historical-visits");
245 + if (!$tabsContainer.length) {
246 + return;
247 + }
248 +
249 + function loadDashboardTab($panel) {
250 + if (!$panel.length || $panel.data('tptn-loaded') || $panel.data('tptn-loading')) {
251 + return;
252 + }
253 + var $content = $panel.find('.tptn-dashboard-tab-content');
254 + if (!$content.length) {
255 + return;
256 + }
257 +
258 + $panel.data('tptn-loading', true).attr('aria-busy', 'true');
259 + $.post(
260 + tptn_chart_data.tabs_url || ajaxurl,
261 + {
262 + action: 'tptn_dashboard_tab',
263 + security: tptn_chart_data.security,
264 + tab: $panel.data('tptn-tab'),
265 + network: parseInt($tabsContainer.data('tptn-network'), 10) || 0
266 + },
267 + function (response) {
268 + if (response && response.success && response.data && typeof response.data.html !== 'undefined') {
269 + $content.html(response.data.html).data('tptn-loaded', true);
270 + } else {
271 + $content.html('<p>' + tptn_chart_data.tab_error + '</p>');
272 + }
273 + },
274 + 'json'
275 + ).fail(function () {
276 + $content.html('<p>' + tptn_chart_data.tab_error + '</p>');
277 + }).always(function () {
278 + $panel.data('tptn-loading', false).removeAttr('aria-busy');
279 + });
280 + }
281 +
239 282 $tabsContainer.tabs({
240 283 create: function (event, ui) {
241 284 $(ui.tab.find("a")).addClass("nav-tab-active");
242 285 },
@@ -242,8 +285,9 @@
242 285 },
243 286 activate: function (event, ui) {
244 287 $(ui.oldTab.find("a")).removeClass("nav-tab-active");
245 288 $(ui.newTab.find("a")).addClass("nav-tab-active");
289 + loadDashboardTab(ui.newPanel);
246 290 }
247 291 });
248 292
249 293 // Wait for the tabs to be fully initialized