diff --git a/include/class.user.php b/include/class.user.php index 9401429b185fa5b6ba77271222bf96f383ae2c3e..65f40b103f2b213350bbb6f97ce29419eb0b571d 100644 --- a/include/class.user.php +++ b/include/class.user.php @@ -604,7 +604,8 @@ class UserAccountModel extends VerySimpleModel { } function isPasswdResetEnabled() { - return !$this->hasStatus(UserAccountStatus::FORBID_PASSWD_RESET); + return !$this->hasStatus(UserAccountStatus::FORBID_PASSWD_RESET) + && (!$this->backend || $this->backend == 'client'); } function getStatus() { @@ -795,10 +796,14 @@ class UserAccount extends UserAccountModel { if ($vars['forbid-pwreset-flag']) $account->setStatus(UserAccountStatus::FORBID_PASSWD_RESET); } + elseif ($vars['backend'] && $vars['backend'] != 'client') { + // Auto confirm remote accounts + $account->setStatus(self::CONFIRMED); + } $account->save(true); - if ($vars['sendemail']) + if (!$account->isConfirmed() && $vars['sendemail']) $account->sendConfirmEmail(); return $account;