Merge pull request #6356 from MrPetovan/task/6355-add-password-rules

Add password rules
This commit is contained in:
Tobias Diekershoff 2019-01-10 10:37:32 +01:00 committed by GitHub
commit 6bc865ff4d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 1799 additions and 1723 deletions

View file

@ -2,7 +2,6 @@
namespace Friendica\Core\Console;
use Friendica\Core\Config;
use Friendica\Core\L10n;
use Friendica\Database\DBA;
use Friendica\Model\User;
@ -74,20 +73,18 @@ HELP;
$password = \Seld\CliPrompt\CliPrompt::hiddenPrompt(true);
}
if (!$password) {
throw new RuntimeException(L10n::t('Password can\'t be empty'));
}
try {
$result = User::updatePassword($user['uid'], $password);
if (!Config::get('system', 'disable_password_exposed', false) && User::isPasswordExposed($password)) {
throw new RuntimeException(L10n::t('The new password has been exposed in a public data dump, please choose another.'));
}
if (!DBA::isResult($result)) {
throw new \Exception(L10n::t('Password update failed. Please try again.'));
}
if (!User::updatePassword($user['uid'], $password)) {
throw new RuntimeException(L10n::t('Password update failed. Please try again.'));
$this->out(L10n::t('Password changed.'));
} catch (\Exception $e) {
throw new RuntimeException($e->getMessage(), $e->getCode(), $e);
}
$this->out(L10n::t('Password changed.'));
return 0;
}
}