Merge pull request #9111 from nextcloud/use-proper-bool-user-disabled-state

Return proper boolean and do not save enabled state in db
This commit is contained in:
Morris Jobke 2018-04-09 23:39:02 +02:00 committed by GitHub
commit acbcc607ea
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 7 additions and 8 deletions

View File

@ -92,7 +92,7 @@ abstract class AUserData extends OCSController {
// Should be at least Admin Or SubAdmin!
if( $this->groupManager->isAdmin($currentLoggedInUser->getUID())
|| $this->groupManager->getSubAdmin()->isUserAccessible($currentLoggedInUser, $targetUserObject)) {
$data['enabled'] = $this->config->getUserValue($targetUserObject->getUID(), 'core', 'enabled', 'true');
$data['enabled'] = $this->config->getUserValue($targetUserObject->getUID(), 'core', 'enabled', 'true') === 'true';
} else {
// Check they are looking up themselves
if($currentLoggedInUser->getUID() !== $targetUserObject->getUID()) {

View File

@ -766,7 +766,7 @@ class UsersControllerTest extends TestCase {
$expected = [
'id' => 'UID',
'enabled' => 'true',
'enabled' => true,
'storageLocation' => '/var/www/newtcloud/data/UID',
'lastLogin' => 1521191471000,
'backend' => 'Database',
@ -881,7 +881,7 @@ class UsersControllerTest extends TestCase {
$expected = [
'id' => 'UID',
'enabled' => 'true',
'enabled' => true,
'storageLocation' => '/var/www/newtcloud/data/UID',
'lastLogin' => 1521191471000,
'backend' => 'Database',

View File

@ -349,13 +349,12 @@ class User implements IUser {
*
* @param bool $enabled
*/
public function setEnabled($enabled) {
public function setEnabled(bool $enabled = true) {
$oldStatus = $this->isEnabled();
$this->enabled = $enabled;
$enabled = $enabled ? 'true' : 'false';
if ($oldStatus !== $this->enabled) {
$this->triggerChange('enabled', $enabled);
$this->config->setUserValue($this->uid, 'core', 'enabled', $enabled);
$this->config->setUserValue($this->uid, 'core', 'enabled', $enabled ? 'true' : 'false');
}
}

View File

@ -146,7 +146,7 @@ interface IUser {
* @param bool $enabled
* @since 8.0.0
*/
public function setEnabled($enabled);
public function setEnabled(bool $enabled = true);
/**
* get the users email address

View File

@ -816,7 +816,7 @@ class UserTest extends TestCase {
->method('triggerChange')
->with(
'enabled',
'false'
false
);
$user->setEnabled(false);