diff --git a/include/class.user.php b/include/class.user.php index 17408aa3384ec52248de6892feaba79abe6c7389..45f84afc1c3b4c820d0e286e68248a69e09ab272 100644 --- a/include/class.user.php +++ b/include/class.user.php @@ -775,8 +775,7 @@ class UserAccountModel extends VerySimpleModel { } function isPasswdResetEnabled() { - return !$this->hasStatus(UserAccountStatus::FORBID_PASSWD_RESET) - && (!$this->backend || $this->backend == 'client'); + return !$this->hasStatus(UserAccountStatus::FORBID_PASSWD_RESET); } function getStatus() { diff --git a/pwreset.php b/pwreset.php index 3680cdf3e17c0cea40594a56a9c9ad1e7dbfc571..2b63aabf63477ab6818d965138b548d244aa9630 100644 --- a/pwreset.php +++ b/pwreset.php @@ -16,16 +16,15 @@ if($_POST) { switch ($_POST['do']) { case 'sendmail': if (($acct=ClientAccount::lookupByUsername($_POST['userid']))) { - if (!$acct->hasPassword()) { - $banner = 'Unable to reset password. Contact your administrator'; - } - elseif (!$acct->isPasswdResetEnabled()) { + if (!$acct->isPasswdResetEnabled()) { $banner = 'Password reset is not enabled for your account. ' .'Contact your administrator'; } - elseif (!$acct->sendResetEmail()) { + elseif ($acct->sendResetEmail()) { $inc = 'pwreset.sent.php'; } + else + $banner = 'Unable to send reset email. Internal error'; } else $banner = 'Unable to verify username '