diff options
Diffstat (limited to 'cli/create-user.php')
| -rwxr-xr-x | cli/create-user.php | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/cli/create-user.php b/cli/create-user.php new file mode 100755 index 000000000..5bc6c1e6c --- /dev/null +++ b/cli/create-user.php @@ -0,0 +1,36 @@ +#!/usr/bin/php +<?php +$isUpdate = false; +require(__DIR__ . '/_update-or-create-user.php'); + +$username = $options['user']; +if (!FreshRSS_user_Controller::checkUsername($username)) { + fail('FreshRSS error: invalid username “' . $username . + '”! Must be matching ' . FreshRSS_user_Controller::USERNAME_PATTERN); +} + +$usernames = listUsers(); +if (preg_grep("/^$username$/i", $usernames)) { + fail('FreshRSS error: username already taken “' . $username . '”'); +} + +echo 'FreshRSS creating user “', $username, "”…\n"; + +$ok = FreshRSS_user_Controller::createUser($username, + empty($options['password']) ? '' : $options['password'], + empty($options['api_password']) ? '' : $options['api_password'], + $values, + !isset($options['no-default-feeds'])); + +if (!$ok) { + fail('FreshRSS could not create user!'); +} + +invalidateHttpCache(FreshRSS_Context::$system_conf->default_user); + +echo '• Remember to refresh the feeds of the user: ', $username , "\n", + "\t", './cli/actualize-user.php --user ', $username, "\n"; + +accessRights(); + +done($ok); |
