Continued work on getter/setters: staff confirm
This commit is contained in:
parent
16942d9d19
commit
20ee47e596
7 changed files with 22 additions and 13 deletions
|
@ -5,7 +5,7 @@ class AcceptUserRegistrationJob extends AbstractUserJob
|
||||||
{
|
{
|
||||||
$user = $this->user;
|
$user = $this->user;
|
||||||
|
|
||||||
$user->staffConfirmed = true;
|
$user->setStaffConfirmed(true);
|
||||||
UserModel::save($user);
|
UserModel::save($user);
|
||||||
|
|
||||||
Logger::log('{user} confirmed {subject}\'s account', [
|
Logger::log('{user} confirmed {subject}\'s account', [
|
||||||
|
|
|
@ -7,7 +7,7 @@ class AddUserJob extends AbstractJob
|
||||||
|
|
||||||
$user = UserModel::spawn();
|
$user = UserModel::spawn();
|
||||||
$user->setJoinTime(time());
|
$user->setJoinTime(time());
|
||||||
$user->staffConfirmed = $firstUser;
|
$user->setStaffConfirmed($firstUser);
|
||||||
UserModel::forgeId($user);
|
UserModel::forgeId($user);
|
||||||
|
|
||||||
if ($firstUser)
|
if ($firstUser)
|
||||||
|
|
|
@ -21,7 +21,7 @@ class Auth
|
||||||
if ($passwordHash != $user->getPasswordHash())
|
if ($passwordHash != $user->getPasswordHash())
|
||||||
throw new SimpleException('Invalid password');
|
throw new SimpleException('Invalid password');
|
||||||
|
|
||||||
if (!$user->staffConfirmed and $config->registration->staffActivation)
|
if (!$user->isStaffConfirmed() and $config->registration->staffActivation)
|
||||||
throw new SimpleException('Staff hasn\'t confirmed your registration yet');
|
throw new SimpleException('Staff hasn\'t confirmed your registration yet');
|
||||||
|
|
||||||
if ($user->isBanned())
|
if ($user->isBanned())
|
||||||
|
|
|
@ -7,7 +7,7 @@ class UserEntity extends AbstractEntity implements IValidatable
|
||||||
protected $name;
|
protected $name;
|
||||||
protected $passSalt;
|
protected $passSalt;
|
||||||
protected $passHash;
|
protected $passHash;
|
||||||
public $staffConfirmed;
|
protected $staffConfirmed;
|
||||||
protected $emailUnconfirmed;
|
protected $emailUnconfirmed;
|
||||||
protected $emailConfirmed;
|
protected $emailConfirmed;
|
||||||
protected $joinDate;
|
protected $joinDate;
|
||||||
|
@ -48,7 +48,7 @@ class UserEntity extends AbstractEntity implements IValidatable
|
||||||
throw new SimpleException('User with this name is already registered and awaits e-mail confirmation');
|
throw new SimpleException('User with this name is already registered and awaits e-mail confirmation');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$otherUser->staffConfirmed
|
if (!$otherUser->isStaffConfirmed()
|
||||||
and $config->registration->staffActivation)
|
and $config->registration->staffActivation)
|
||||||
{
|
{
|
||||||
throw new SimpleException('User with this name is already registered and awaits staff confirmation');
|
throw new SimpleException('User with this name is already registered and awaits staff confirmation');
|
||||||
|
@ -168,6 +168,16 @@ class UserEntity extends AbstractEntity implements IValidatable
|
||||||
$this->emailConfirmed = $email;
|
$this->emailConfirmed = $email;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function isStaffConfirmed()
|
||||||
|
{
|
||||||
|
return $this->staffConfirmed;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setStaffConfirmed($confirmed)
|
||||||
|
{
|
||||||
|
$this->staffConfirmed = $confirmed;
|
||||||
|
}
|
||||||
|
|
||||||
public function getPasswordHash()
|
public function getPasswordHash()
|
||||||
{
|
{
|
||||||
return $this->passHash;
|
return $this->passHash;
|
||||||
|
|
|
@ -9,7 +9,6 @@ class UserModel extends AbstractCrudModel
|
||||||
const SETTING_POST_TAG_TITLES = 3;
|
const SETTING_POST_TAG_TITLES = 3;
|
||||||
const SETTING_HIDE_DISLIKED_POSTS = 4;
|
const SETTING_HIDE_DISLIKED_POSTS = 4;
|
||||||
|
|
||||||
|
|
||||||
public static function getTableName()
|
public static function getTableName()
|
||||||
{
|
{
|
||||||
return 'user';
|
return 'user';
|
||||||
|
@ -45,7 +44,7 @@ class UserModel extends AbstractCrudModel
|
||||||
'name' => $user->getName(),
|
'name' => $user->getName(),
|
||||||
'pass_salt' => $user->getPasswordSalt(),
|
'pass_salt' => $user->getPasswordSalt(),
|
||||||
'pass_hash' => $user->getPasswordHash(),
|
'pass_hash' => $user->getPasswordHash(),
|
||||||
'staff_confirmed' => $user->staffConfirmed,
|
'staff_confirmed' => $user->isStaffConfirmed(),
|
||||||
'email_unconfirmed' => $user->getUnconfirmedEmail(),
|
'email_unconfirmed' => $user->getUnconfirmedEmail(),
|
||||||
'email_confirmed' => $user->getConfirmedEmail(),
|
'email_confirmed' => $user->getConfirmedEmail(),
|
||||||
'join_date' => $user->getJoinTime(),
|
'join_date' => $user->getJoinTime(),
|
||||||
|
|
|
@ -103,7 +103,7 @@ Assets::addStylesheet('user-view.css');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Access::check(new Privilege(Privilege::AcceptUserRegistration))
|
if (Access::check(new Privilege(Privilege::AcceptUserRegistration))
|
||||||
and !$this->context->transport->user->staffConfirmed
|
and !$this->context->transport->user->isStaffConfirmed()
|
||||||
and getConfig()->registration->staffActivation)
|
and getConfig()->registration->staffActivation)
|
||||||
{
|
{
|
||||||
$options []=
|
$options []=
|
||||||
|
|
|
@ -65,7 +65,7 @@ class AuthTest extends AbstractTest
|
||||||
getConfig()->registration->needEmailForRegistering = false;
|
getConfig()->registration->needEmailForRegistering = false;
|
||||||
|
|
||||||
$user = $this->prepareValidUser();
|
$user = $this->prepareValidUser();
|
||||||
$user->staffConfirmed = false;
|
$user->setStaffConfirmed(false);
|
||||||
UserModel::save($user);
|
UserModel::save($user);
|
||||||
|
|
||||||
$this->assert->throws(function()
|
$this->assert->throws(function()
|
||||||
|
@ -80,7 +80,7 @@ class AuthTest extends AbstractTest
|
||||||
getConfig()->registration->needEmailForRegistering = false;
|
getConfig()->registration->needEmailForRegistering = false;
|
||||||
|
|
||||||
$user = $this->prepareValidUser();
|
$user = $this->prepareValidUser();
|
||||||
$user->staffConfirmed = false;
|
$user->setStaffConfirmed(false);
|
||||||
UserModel::save($user);
|
UserModel::save($user);
|
||||||
|
|
||||||
$this->assert->doesNotThrow(function()
|
$this->assert->doesNotThrow(function()
|
||||||
|
@ -95,7 +95,7 @@ class AuthTest extends AbstractTest
|
||||||
getConfig()->registration->needEmailForRegistering = true;
|
getConfig()->registration->needEmailForRegistering = true;
|
||||||
|
|
||||||
$user = $this->prepareValidUser();
|
$user = $this->prepareValidUser();
|
||||||
$user->staffConfirmed = false;
|
$user->setStaffConfirmed(false);
|
||||||
UserModel::save($user);
|
UserModel::save($user);
|
||||||
|
|
||||||
$this->assert->throws(function()
|
$this->assert->throws(function()
|
||||||
|
@ -110,7 +110,7 @@ class AuthTest extends AbstractTest
|
||||||
getConfig()->registration->needEmailForRegistering = true;
|
getConfig()->registration->needEmailForRegistering = true;
|
||||||
|
|
||||||
$user = $this->prepareValidUser();
|
$user = $this->prepareValidUser();
|
||||||
$user->staffConfirmed = false;
|
$user->setStaffConfirmed(false);
|
||||||
$user->setUnconfirmedEmail('test@example.com');
|
$user->setUnconfirmedEmail('test@example.com');
|
||||||
UserModel::save($user);
|
UserModel::save($user);
|
||||||
|
|
||||||
|
@ -126,7 +126,7 @@ class AuthTest extends AbstractTest
|
||||||
getConfig()->registration->needEmailForRegistering = true;
|
getConfig()->registration->needEmailForRegistering = true;
|
||||||
|
|
||||||
$user = $this->prepareValidUser();
|
$user = $this->prepareValidUser();
|
||||||
$user->staffConfirmed = false;
|
$user->setStaffConfirmed(false);
|
||||||
$user->setConfirmedEmail('test@example.com');
|
$user->setConfirmedEmail('test@example.com');
|
||||||
UserModel::save($user);
|
UserModel::save($user);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue