Add the /admin/downloads page for monitoring download queue

This commit is contained in:
Alex Ling
2020-03-01 03:05:40 +00:00
parent c4253db572
commit 1ce553f541
3 changed files with 79 additions and 0 deletions
+42
View File
@@ -0,0 +1,42 @@
$(() => {
load();
});
const load = () => {
$.ajax({
type: 'GET',
url: '/api/admin/mangadex/queue',
dataType: 'json'
})
.done(data => {
console.log(data);
const rows = data.map(obj => {
var cls = 'uk-label ';
if (obj.status === 'Completed')
cls += 'uk-label-success';
if (obj.status === 'Error')
cls += 'uk-label-danger';
if (obj.status === 'MissingPages')
cls += 'uk-label-warning';
const statusSpan = `<span class="${cls}">${obj.status}</span>`;
return `<tr>
<td><a href="${baseURL}/chapter/${obj.id}">${obj.title}</a></td>
<td><a href="${baseURL}/manga/${obj.manga_id}">${obj.manga_title}</a></td>
<td>${obj.success_count}/${obj.pages}</td>
<td>${moment(obj.time).fromNow()}</td>
<td>${statusSpan}</td>
<td>
<a href="#" uk-icon="trash"></a>
<a href="#" uk-icon="info"></a>
</td>
</tr>`;
});
const tbody = `<tbody>${rows.join('')}</tbody>`;
$('tbody').remove();
$('table').append(tbody);
})
.fail((jqXHR, status) => {
alert('danger', `Failed to fetch download queue. Error: [${jqXHR.status}] ${jqXHR.statusText}`);
});
};