Add a way to disable/enable users (#3056)

If you want to block users without deleting their account, you can now
disable them from the interface.
This commit is contained in:
Alexis Degrugillier
2020-06-14 19:50:09 +02:00
committed by GitHub
parent 6edbeaaf6a
commit caeb660f29
28 changed files with 94 additions and 19 deletions

View File

@@ -2,7 +2,7 @@
<?php
require(__DIR__ . '/_cli.php');
const DATA_FORMAT = "%-7s | %-20s | %-25s | %-15s | %-10s | %-10s | %-10s | %-10s | %-10s | %-10s | %-5s | %-10s\n";
const DATA_FORMAT = "%-7s | %-20s | %-5s | %-7s | %-25s | %-15s | %-10s | %-10s | %-10s | %-10s | %-10s | %-10s | %-5s | %-10s\n";
$params = array(
'user:',
@@ -35,8 +35,10 @@ if ($formatJson) {
if (array_key_exists('header', $options)) {
printf(
DATA_FORMAT,
'is_default',
'default',
'user',
'admin',
'enabled',
'last user activity',
'space used',
'categories',
@@ -64,16 +66,18 @@ foreach ($users as $username) {
$nbFavorites = $entryDAO->countUnreadReadFavorites();
$data = array(
'is_default' => $username === FreshRSS_Context::$system_conf->default_user ? '*' : '',
'default' => $username === FreshRSS_Context::$system_conf->default_user ? '*' : '',
'user' => $username,
'admin' => $userConfiguration->is_admin ? '*' : '',
'enabled' => $userConfiguration->enabled ? '*' : '',
'last_user_activity' => FreshRSS_UserDAO::mtime($username),
'database_size' => $databaseDAO->size(),
'categories' => $catDAO->count(),
'feeds' => count($feedDAO->listFeedsIds()),
'reads' => $nbEntries['read'],
'unreads' => $nbEntries['unread'],
'favourites' => $nbFavorites['all'],
'tags' => $tagDAO->count(),
'categories' => (int) $catDAO->count(),
'feeds' => (int) count($feedDAO->listFeedsIds()),
'reads' => (int) $nbEntries['read'],
'unreads' => (int) $nbEntries['unread'],
'favourites' => (int) $nbFavorites['all'],
'tags' => (int) $tagDAO->count(),
'lang' => $userConfiguration->language,
'mail_login' => $userConfiguration->mail_login,
);
@@ -82,7 +86,9 @@ foreach ($users as $username) {
$data['database_size'] = format_bytes($data['database_size']);
}
if ($formatJson) {
$data['is_default'] = !empty($data['is_default']);
$data['default'] = !empty($data['default']);
$data['admin'] = !empty($data['admin']);
$data['enabled'] = !empty($data['enabled']);
$data['last_user_activity'] = gmdate('Y-m-d\TH:i:s\Z', $data['last_user_activity']);
$jsonOutput[] = $data;
} else {