Add worker queue details (#5375)

* Added Worker queue page

* Added worker queue template

* Added translation strings

* Added en-US translation

* #TGWHT: Thank god we have Typo

* Where donkey == true

* Added in to menu correctly

* Updated link in summary page

* Updated link on summary page for frio theme

* Updated q() to dba::select()

* Revert "Added translation strings"

This reverts commit f1f3694a24.

* Revert "Added en-US translation"

This reverts commit 61777489e3.
This commit is contained in:
Jeroen De Meerleer 2018-07-14 20:01:17 +02:00 committed by Hypolite Petovan
parent 8aee795b45
commit 678efab1c9
4 changed files with 60 additions and 4 deletions

View file

@ -189,7 +189,8 @@ function admin_content(App $a)
'tos' => ["admin/tos/" , L10n::t("Terms of Service") , "tos"] ]],
'database' => [ L10n::t('Database'), [
'dbsync' => ["admin/dbsync/" , L10n::t('DB updates') , "dbsync"],
'queue' => ["admin/queue/" , L10n::t('Inspect Queue') , "queue"], ]],
'queue' => ["admin/queue/" , L10n::t('Inspect Queue') , "queue"],
'workerqueue' => ["admin/workerqueue/" , L10n::t('Inspect worker Queue') , "workerqueue"] ]],
'tools' => [ L10n::t('Tools'), [
'contactblock' => ["admin/contactblock/", L10n::t('Contact Blocklist') , "contactblock"],
'blocklist' => ["admin/blocklist/" , L10n::t('Server Blocklist') , "blocklist"],
@ -258,6 +259,9 @@ function admin_content(App $a)
case 'queue':
$o = admin_page_queue($a);
break;
case 'workerqueue':
$o = admin_page_workerqueue($a);
break;
case 'federation':
$o = admin_page_federation($a);
break;
@ -729,7 +733,7 @@ function admin_page_federation(App $a)
* @brief Admin Inspect Queue Page
*
* Generates a page for the admin to have a look into the current queue of
* postings that are not deliverabke. Shown are the name and url of the
* postings that are not deliverable. Shown are the name and url of the
* recipient, the delivery network and the dates when the posting was generated
* and the last time tried to deliver the posting.
*
@ -762,6 +766,37 @@ function admin_page_queue(App $a)
]);
}
/**
* @brief Admin Inspect Worker Queue Page
*
* Generates a page for the admin to have a look into the current queue of
* worker jobs. Shown are the parameters for the job and its priority.
*
* The returned string holds the content of the page.
*
* @param App $a
* @return string
*/
function admin_page_workerqueue(App $a)
{
// get jobs from the workerqueue table
$statement = dba::select('workerqueue', ['id', 'parameter', 'created', 'priority'], ['done' => 0], ['order'=> ['priority']]);
$r = dba::inArray($statement);
$t = get_markup_template('admin/workerqueue.tpl');
return replace_macros($t, [
'$title' => L10n::t('Administration'),
'$page' => L10n::t('Inspect Worker Queue'),
'$count' => count($r),
'$id_header' => L10n::t('ID'),
'$param_header' => L10n::t('Job Parameters'),
'$created_header' => L10n::t('Created'),
'$prio_header' => L10n::t('Priority'),
'$info' => L10n::t('This page lists the currently queued worker jobs. These jobs are handled by the worker cronjob you\'ve set up during install.'),
'$entries' => $r,
]);
}
/**
* @brief Admin Summary Page
*