Browse Source

Change code to wind down checks when no doing anything

pull/21/head
KodeStar 7 years ago
parent
commit
79f4a6cc07
  1. 21
      app/SupportedApps/Nzbget.php
  2. 10
      public/js/app.js
  3. 10
      resources/assets/js/app.js

21
app/SupportedApps/Nzbget.php

@ -39,19 +39,24 @@ class Nzbget implements Contracts\Applications, Contracts\Livestats {
}
public function executeConfig()
{
$output = '';
$res = $this->buildRequest('status');
$data = json_decode($res->getBody());
//$data->result->RemainingSizeMB = '10000000';
//$data->result->DownloadRate = '100000000';
$queue_size = format_bytes($data->result->RemainingSizeMB*1000*1000, false, ' <span>', '</span>');
$current_speed = format_bytes($data->result->DownloadRate, false, ' <span>');
$size = $data->result->RemainingSizeMB;
$rate = $data->result->DownloadRate;
$queue_size = format_bytes($size*1000*1000, false, ' <span>', '</span>');
$current_speed = format_bytes($rate, false, ' <span>');
$output = '
<ul class="livestats">
<li><span class="title">Queue</span><strong>'.$queue_size.'</strong></li>
<li><span class="title">Speed</span><strong>'.$current_speed.'/s</span></strong></li>
</ul>
';
if($size > 0 || $rate > 0) {
$output = '
<ul class="livestats">
<li><span class="title">Queue</span><strong>'.$queue_size.'</strong></li>
<li><span class="title">Speed</span><strong>'.$current_speed.'/s</span></strong></li>
</ul>
';
}
return $output;
}
public function buildRequest($endpoint)

10
public/js/app.js

@ -21,15 +21,21 @@ $.when( $.ready ).then(function() {
$('.livestats-container').each(function(index){
var id = $(this).data('id');
var container = $(this);
(function worker() {
var max_timer = 30000;
var timer = 1000;
(function worker() {
$.ajax({
url: '/get_stats/'+id,
success: function(data) {
container.html(data);
if(data != '') timer = 1000;
else {
if(timer < max_timer) timer += 2000;
}
},
complete: function() {
// Schedule the next request when the current one's complete
setTimeout(worker, 5000);
setTimeout(worker, timer);
}
});
})();

10
resources/assets/js/app.js

@ -12,15 +12,21 @@ $.when( $.ready ).then(function() {
$('.livestats-container').each(function(index){
var id = $(this).data('id');
var container = $(this);
(function worker() {
var max_timer = 30000;
var timer = 1000;
(function worker() {
$.ajax({
url: '/get_stats/'+id,
success: function(data) {
container.html(data);
if(data != '') timer = 1000;
else {
if(timer < max_timer) timer += 2000;
}
},
complete: function() {
// Schedule the next request when the current one's complete
setTimeout(worker, 5000);
setTimeout(worker, timer);
}
});
})();

Loading…
Cancel
Save