|
Line 0
Link Here
|
| 0 |
- |
1 |
function updateProgress(job_id) { |
|
|
2 |
$.getJSON('/api/v1/jobs/' + job_id, function(job){ |
| 3 |
let recheck = true; |
| 4 |
|
| 5 |
if ( job.status == "new" ) { |
| 6 |
$(`#job-percent-${job_id}`).text(0); |
| 7 |
$(`#job-status-${job_id}`).text(JOB_PROGRESS_NOT_STARTED); |
| 8 |
$(`#progress-bar-${job_id}`).attr('aria-valuenow', 0).css("width", "100%"); |
| 9 |
} else if ( job.status == "started" ) { |
| 10 |
const progress = job["progress"]; |
| 11 |
const size = job["size"]; |
| 12 |
const percent = progress > 0 ? ( progress / size ) * 100 : 0; |
| 13 |
$(`#job-percent-${job_id}`).text(percent.toFixed(2)); |
| 14 |
$(`#job-status-${job_id}`).text(JOB_PROGRESS_STARTED); |
| 15 |
$(`#progress-bar-${job_id}`).attr('aria-valuenow', percent).css("width", `${percent}%`); |
| 16 |
} else if ( job.status == "finished" ) { |
| 17 |
$(`#job-percent-${job_id}`).text(100); |
| 18 |
$(`#job-status-${job_id}`).text(JOB_PROGRESS_FINISHED); |
| 19 |
$(`#progress-bar-${job_id}`).addClass("progress-bar-success"); |
| 20 |
$(`#progress-bar-${job_id}`).attr('aria-valuenow', 100).css("width", "100%"); |
| 21 |
recheck = false; |
| 22 |
} else if ( job.status == "failed" ) { |
| 23 |
$(`#job-percent-${job_id}`).text(0); |
| 24 |
$(`#job-status-${job_id}`).text(JOB_PROGRESS_FAILED); |
| 25 |
$(`#progress-bar-${job_id}`).addClass("progress-bar-danger"); |
| 26 |
$(`#progress-bar-${job_id}`).attr('aria-valuenow', 0).css("width", "100%"); |
| 27 |
recheck = false; |
| 28 |
} |
| 29 |
|
| 30 |
if ( recheck ) { |
| 31 |
setTimeout(function(){updateProgress(job_id)}, 1 * 1000); |
| 32 |
} |
| 33 |
}); |
| 34 |
} |