PluginProbe
Adminify – White Label, Admin Menu Editor, Login Customizer / 2.0.4
Adminify – White Label, Admin Menu Editor, Login Customizer v2.0.4
4.3.1 4.3.0 4.2.26 4.2.25 4.2.24 4.2.23 4.2.22 4.2.21 4.2.20 4.2.19 4.2.18 4.2.17 4.2.16 4.2.15 4.2.14 4.2.13 4.2.12 4.2.11 4.2.10 4.2.9 4.2.8 4.2.7 4.2.6 4.2.5 4.1.17 All 164 releases
adminify / assets / js / adminify-realtime-server.js

adminify-realtime-server.js in Adminify – White Label, Admin Menu Editor, Login Customizer 2.0.4, at assets/js/adminify-realtime-server.js

152 lines 6.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 // WP Adminify Realtime Server Details widget
2 (function ($)
3 {
4 'use strict';
5
6 var set_default = false;
7 var uptime_interval;
8 var interval_count = 0;
9
10 var Adminify_Realtime_Server = {
11
12 UpdateServerUptime: function( $days, $hours, $minutes, $seconds, upsec ) {
13
14 $days.innerText = Math.floor(upsec / 86400);
15 $hours.innerText = String( Math.floor((upsec % 86400) / 3600) ).padStart(2, '0');
16 $minutes.innerText = String( Math.floor(((upsec % 86400) % 3600) / 60) ).padStart(2, '0');
17 $seconds.innerText = String( Math.floor(((upsec % 86400) % 3600) % 60) ).padStart(2, '0');
18
19 },
20
21 // Server Uptime Counter
22 ServerUptime: function(upsec) {
23
24 upsec = Number(upsec);
25
26 var $days = document.getElementById("adminify-days"),
27 $hours = document.getElementById("adminify-hours"),
28 $minutes = document.getElementById("adminify-minutes"),
29 $seconds = document.getElementById("adminify-seconds");
30
31 // Init
32 Adminify_Realtime_Server.UpdateServerUptime( $days, $hours, $minutes, $seconds, Number(upsec) );
33
34 // 1 Sec Interval
35 uptime_interval = setInterval( function() {
36 Adminify_Realtime_Server.UpdateServerUptime( $days, $hours, $minutes, $seconds, ++upsec );
37 }, 1000);
38
39 },
40
41 ProgressBar: function(){
42 var totalProgress, progress;
43 const circles = document.querySelectorAll('.adminify-progress-bar');
44 for(var i = 0; i < circles.length; i++) {
45 totalProgress = circles[i].querySelector('circle').getAttribute('stroke-dasharray');
46 progress = circles[i].parentElement.getAttribute('data-percent');
47
48 circles[i].querySelector('.adminify-bar').style['stroke-dashoffset'] = totalProgress * progress / 100;
49
50 }
51 },
52
53
54 Ajax_Server_Data: function(){
55 $.ajax({
56 type: 'POST',
57 dataType: 'json',
58 async: false,
59 url: WPAdminify_Server.ajax_url,
60 data: {
61 action: 'adminify_live_server_stats',
62 security: WPAdminify_Server.security_nonce
63 },
64 cache: false,
65 success: function (response) {
66
67 if ( ! response.success ) return;
68
69 // CPU Loads
70 var $cpu_load = response.data.cpu_load;
71 $('#adminify-cpu-load').attr('data-percent', $cpu_load);
72
73 if ($cpu_load <= 10) {
74 $('#adminify-cpu-load .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#00BA88' });
75 } else if ($cpu_load > 65 && $cpu_load < 90) {
76 $('#adminify-cpu-load .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#ffe08a' });
77 } else if ($cpu_load > 90) {
78 $('#adminify-cpu-load .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#f14668' });
79 }
80
81
82 // PHP Memory Usage
83 var $memory_load_mb = response.data.memory_usage_MB;
84 $('#adminify-php-memory-usage').attr('data-percent', $memory_load_mb);
85
86 if ($memory_load_mb <= 10) {
87 $('#adminify-php-memory-usage .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#00BA88' });
88 } else if ($memory_load_mb > 65 && $memory_load_mb < 90) {
89 $('#adminify-php-memory-usage .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#ffe08a' });
90 } else if ($memory_load_mb > 90) {
91 $('#adminify-php-memory-usage .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#f14668' });
92 }
93
94
95 // RAM Usage
96 var $ram_used = response.data.used_ram;
97 $('#adminify-ram-usage').attr('data-percent', $ram_used);
98
99
100 if ($ram_used <= 10) {
101 $('#adminify-ram-usage .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#00BA88' });
102 } else if ($ram_used > 65 && $ram_used < 90) {
103 $('#adminify-ram-usage .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#ffe08a' });
104 } else if ($ram_used > 90) {
105 $('#adminify-ram-usage .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#f14668' });
106 }
107
108
109
110 // WP Memory Usage
111 var $wp_memory_usage = response.data.wp_memory_usage;
112 $('#adminify-wp-memory-usage').attr('data-percent', $wp_memory_usage);
113
114
115 if ($wp_memory_usage <= 10) {
116 $('#adminify-wp-memory-usage .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#00BA88' });
117 } else if ($wp_memory_usage > 65 && $wp_memory_usage < 90) {
118 $('#adminify-wp-memory-usage .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#ffe08a' });
119 } else if ($wp_memory_usage > 90) {
120 $('#adminify-wp-memory-usage .adminify-progress-bar circle:not(.adminify-bar)').css({ 'stroke': '#f14668' });
121 }
122
123
124 Adminify_Realtime_Server.ProgressBar();
125
126 if (set_default == false) {
127 Adminify_Realtime_Server.ServerUptime(response.data.uptime);
128 set_default = true;
129 }
130
131 },
132 });
133 }
134 }
135
136 // Documents Loaded
137 Adminify_Realtime_Server.Ajax_Server_Data();
138 setInterval( function() {
139
140 interval_count++;
141
142 if ( interval_count > 10 ) {
143 interval_count = 0;
144 set_default = false;
145 if ( uptime_interval ) clearInterval(uptime_interval);
146 }
147
148 Adminify_Realtime_Server.Ajax_Server_Data();
149
150 }, 5000 );
151
152 })(jQuery);