Moge-Row commited on
Commit
bfe1e71
·
1 Parent(s): 35597fa

real time stats on page

Browse files
Files changed (1) hide show
  1. internal/handler/index.html +23 -0
internal/handler/index.html CHANGED
@@ -172,5 +172,28 @@ function loadStats() {
172
  loadStats();
173
  setInterval(loadStats, 30000);
174
  </script>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
175
  </body>
176
  </html>
 
172
  loadStats();
173
  setInterval(loadStats, 30000);
174
  </script>
175
+ <script>
176
+ function loadStats() {
177
+ fetch('/stats')
178
+ .then(r => r.json())
179
+ .then(data => {
180
+ var keys = Object.values(data.keys || {});
181
+ keys.sort(function(a,b){ return b.requests - a.requests; });
182
+ var grid = document.getElementById('users-grid');
183
+ if (keys.length === 0) {
184
+ grid.innerHTML = '<div class="commander-card"><div class="cmd-name">Sin usuarios aun</div><div class="cmd-trait">SE EL PRIMERO EN USAR LA PROXY</div></div>';
185
+ return;
186
+ }
187
+ grid.innerHTML = keys.slice(0,4).map(function(k){
188
+ return '<div class="commander-card"><div class="cmd-name">' + k.name + '</div><div class="cmd-trait">SOLICITUDES: ' + k.requests + ' // TOKENS: ' + k.tokens + '</div></div>';
189
+ }).join('');
190
+ var freeEl = document.getElementById('free-count');
191
+ if (freeEl) freeEl.textContent = (data.free_reqs || 0) + '/340';
192
+ })
193
+ .catch(function(){ });
194
+ }
195
+ loadStats();
196
+ setInterval(loadStats, 30000);
197
+ </script>
198
  </body>
199
  </html>