]> git.mxchange.org Git - friendica.git/blobdiff - mod/admin.php
Converting timezone in admin queues
[friendica.git] / mod / admin.php
index c8ad5204a47f50fc80efe39fc79a7525b0b5c7c6..9ef4c31aed6b0d57ebfa31af7fcd4dfe2827c27b 100644 (file)
@@ -21,6 +21,7 @@ use Friendica\Model\Item;
 use Friendica\Model\User;
 use Friendica\Module\Login;
 use Friendica\Module\Tos;
+use Friendica\Util\Arrays;
 use Friendica\Util\DateTimeFormat;
 use Friendica\Util\Temporal;
 
@@ -745,11 +746,21 @@ function admin_page_federation(App $a)
 function admin_page_queue(App $a)
 {
        // get content from the queue table
+       // PLEASE REVIEW (not 100% sure about my code)
+       $statement = DBA::Select('`queue` AS `q`, `contact` AS `c`',
+               [ '`c`.`name`', '`c`.`nurl`', '`q`.`id`', '`q`.`network`', "CONVERT_TZ(`q`.`created`, 'UTC' " . Config::get('system', 'default_timezone') . ') as created', "CONVERT_TZ(`q`.`last`, 'UTC', " . Config::get('system', 'default_timezone') . "') as last" ],
+               '`c`.`id`' => '`q`.`cid`',
+               ['order'=> ['`q`.`cid`, `q`.`created`']]
+       );
+       $r = DBA::toArray($statement);
+
+       /*
+       // Leaving this one here for the code review as well as backup
        $r = q("SELECT `c`.`name`, `c`.`nurl`, `q`.`id`, `q`.`network`, `q`.`created`, `q`.`last`
                        FROM `queue` AS `q`, `contact` AS `c`
                        WHERE `c`.`id` = `q`.`cid`
                        ORDER BY `q`.`cid`, `q`.`created`;");
-
+       */
        $t = get_markup_template('admin/queue.tpl');
        return replace_macros($t, [
                '$title' => L10n::t('Administration'),
@@ -780,11 +791,12 @@ function admin_page_queue(App $a)
 function admin_page_workerqueue(App $a)
 {
        // get jobs from the workerqueue table
-       $statement = DBA::select('workerqueue', ['id', 'parameter', 'created', 'priority'], ['done' => 0], ['order'=> ['priority']]);
+       $statement = DBA::select('workerqueue', ['id', 'parameter', "CONVERT_TZ(created', 'UTC', " . Config::get('system', 'default_timezone') . "') as created", 'priority'], ['done' => 0], ['order'=> ['priority']]);
        $r = DBA::toArray($statement);
 
-       for($i = 0; $i < count($r); $i++) {
-               $r[$i]['parameter'] = implode(json_decode($r[$i]['parameter']), ': ');
+       foreach ($r as $key => $rr) {
+               // fix GH-5469. ref: src/Core/Worker.php:217
+               $r[$key]['parameter'] = Arrays::recursiveImplode(json_decode($rr['parameter'], true), ': ');
        }
 
        $t = get_markup_template('admin/workerqueue.tpl');
@@ -815,7 +827,7 @@ function admin_page_workerqueue(App $a)
 function admin_page_summary(App $a)
 {
        // are there MyISAM tables in the DB? If so, trigger a warning message
-       $r = q("SELECT `engine` FROM `information_schema`.`tables` WHERE `engine` = 'myisam' AND `table_schema` = '%s' LIMIT 1", dbesc(DBA::databaseName()));
+       $r = q("SELECT `engine` FROM `information_schema`.`tables` WHERE `engine` = 'myisam' AND `table_schema` = '%s' LIMIT 1", DBA::escape(DBA::databaseName()));
        $showwarning = false;
        $warningtext = [];
        if (DBA::isResult($r)) {
@@ -948,8 +960,8 @@ function admin_page_site_post(App $a)
 
                function update_table($table_name, $fields, $old_url, $new_url)
                {
-                       $dbold = dbesc($old_url);
-                       $dbnew = dbesc($new_url);
+                       $dbold = DBA::escape($old_url);
+                       $dbnew = DBA::escape($new_url);
 
                        $upd = [];
                        foreach ($fields as $f) {
@@ -1806,17 +1818,17 @@ function admin_page_users(App $a)
        $adminlist = explode(",", str_replace(" ", "", Config::get('config', 'admin_email')));
        $_setup_users = function ($e) use ($adminlist) {
                $page_types = [
-                       PAGE_NORMAL    => L10n::t('Normal Account Page'),
-                       PAGE_SOAPBOX   => L10n::t('Soapbox Page'),
-                       PAGE_COMMUNITY => L10n::t('Public Forum'),
-                       PAGE_FREELOVE  => L10n::t('Automatic Friend Page'),
-                       PAGE_PRVGROUP  => L10n::t('Private Forum')
+                       Contact::PAGE_NORMAL    => L10n::t('Normal Account Page'),
+                       Contact::PAGE_SOAPBOX   => L10n::t('Soapbox Page'),
+                       Contact::PAGE_COMMUNITY => L10n::t('Public Forum'),
+                       Contact::PAGE_FREELOVE  => L10n::t('Automatic Friend Page'),
+                       Contact::PAGE_PRVGROUP  => L10n::t('Private Forum')
                ];
                $account_types = [
-                       ACCOUNT_TYPE_PERSON       => L10n::t('Personal Page'),
-                       ACCOUNT_TYPE_ORGANISATION => L10n::t('Organisation Page'),
-                       ACCOUNT_TYPE_NEWS         => L10n::t('News Page'),
-                       ACCOUNT_TYPE_COMMUNITY    => L10n::t('Community Forum')
+                       Contact::ACCOUNT_TYPE_PERSON       => L10n::t('Personal Page'),
+                       Contact::ACCOUNT_TYPE_ORGANISATION => L10n::t('Organisation Page'),
+                       Contact::ACCOUNT_TYPE_NEWS         => L10n::t('News Page'),
+                       Contact::ACCOUNT_TYPE_COMMUNITY    => L10n::t('Community Forum')
                ];
 
                $e['page_flags_raw'] = $e['page-flags'];
@@ -1880,6 +1892,7 @@ function admin_page_users(App $a)
                '$deny' => L10n::t('Deny'),
                '$delete' => L10n::t('Delete'),
                '$block' => L10n::t('Block'),
+               '$blocked' => L10n::t('User blocked'),
                '$unblock' => L10n::t('Unblock'),
                '$siteadmin' => L10n::t('Site admin'),
                '$accountexpired' => L10n::t('Account expired'),