Only try to load avatars in the user list if there is any
This commit is contained in:
parent
e91eba4b5b
commit
a619629ac0
|
@ -136,7 +136,8 @@ class Application extends App {
|
||||||
$c->query('Mailer'),
|
$c->query('Mailer'),
|
||||||
$c->query('DefaultMailAddress'),
|
$c->query('DefaultMailAddress'),
|
||||||
$c->query('URLGenerator'),
|
$c->query('URLGenerator'),
|
||||||
$c->query('OCP\\App\\IAppManager')
|
$c->query('OCP\\App\\IAppManager'),
|
||||||
|
$c->query('OCP\\IAvatarManager')
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
$container->registerService('LogSettingsController', function(IContainer $c) {
|
$container->registerService('LogSettingsController', function(IContainer $c) {
|
||||||
|
|
|
@ -43,6 +43,7 @@ use OCP\IUser;
|
||||||
use OCP\IUserManager;
|
use OCP\IUserManager;
|
||||||
use OCP\IUserSession;
|
use OCP\IUserSession;
|
||||||
use OCP\Mail\IMailer;
|
use OCP\Mail\IMailer;
|
||||||
|
use OCP\IAvatarManager;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @package OC\Settings\Controller
|
* @package OC\Settings\Controller
|
||||||
|
@ -74,6 +75,8 @@ class UsersController extends Controller {
|
||||||
private $isEncryptionAppEnabled;
|
private $isEncryptionAppEnabled;
|
||||||
/** @var bool contains the state of the admin recovery setting */
|
/** @var bool contains the state of the admin recovery setting */
|
||||||
private $isRestoreEnabled = false;
|
private $isRestoreEnabled = false;
|
||||||
|
/** @var IAvatarManager */
|
||||||
|
private $avatarManager;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param string $appName
|
* @param string $appName
|
||||||
|
@ -104,7 +107,8 @@ class UsersController extends Controller {
|
||||||
IMailer $mailer,
|
IMailer $mailer,
|
||||||
$fromMailAddress,
|
$fromMailAddress,
|
||||||
IURLGenerator $urlGenerator,
|
IURLGenerator $urlGenerator,
|
||||||
IAppManager $appManager) {
|
IAppManager $appManager,
|
||||||
|
IAvatarManager $avatarManager) {
|
||||||
parent::__construct($appName, $request);
|
parent::__construct($appName, $request);
|
||||||
$this->userManager = $userManager;
|
$this->userManager = $userManager;
|
||||||
$this->groupManager = $groupManager;
|
$this->groupManager = $groupManager;
|
||||||
|
@ -117,6 +121,7 @@ class UsersController extends Controller {
|
||||||
$this->mailer = $mailer;
|
$this->mailer = $mailer;
|
||||||
$this->fromMailAddress = $fromMailAddress;
|
$this->fromMailAddress = $fromMailAddress;
|
||||||
$this->urlGenerator = $urlGenerator;
|
$this->urlGenerator = $urlGenerator;
|
||||||
|
$this->avatarManager = $avatarManager;
|
||||||
|
|
||||||
// check for encryption state - TODO see formatUserForIndex
|
// check for encryption state - TODO see formatUserForIndex
|
||||||
$this->isEncryptionAppEnabled = $appManager->isEnabledForUser('encryption');
|
$this->isEncryptionAppEnabled = $appManager->isEnabledForUser('encryption');
|
||||||
|
@ -168,6 +173,12 @@ class UsersController extends Controller {
|
||||||
if (is_null($displayName)) {
|
if (is_null($displayName)) {
|
||||||
$displayName = '';
|
$displayName = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$avatarAvailable = false;
|
||||||
|
if ($this->config->getSystemValue('enable_avatars', true) === true) {
|
||||||
|
$avatarAvailable = $this->avatarManager->getAvatar($user->getUID())->exists();
|
||||||
|
}
|
||||||
|
|
||||||
return [
|
return [
|
||||||
'name' => $user->getUID(),
|
'name' => $user->getUID(),
|
||||||
'displayname' => $user->getDisplayName(),
|
'displayname' => $user->getDisplayName(),
|
||||||
|
@ -179,6 +190,7 @@ class UsersController extends Controller {
|
||||||
'backend' => $user->getBackendClassName(),
|
'backend' => $user->getBackendClassName(),
|
||||||
'email' => $displayName,
|
'email' => $displayName,
|
||||||
'isRestoreDisabled' => !$restorePossible,
|
'isRestoreDisabled' => !$restorePossible,
|
||||||
|
'isAvatarAvailable' => $avatarAvailable,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -54,6 +54,30 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
$this->container['OCP\\App\\IAppManager'] = $this->getMockBuilder('OCP\\App\\IAppManager')
|
$this->container['OCP\\App\\IAppManager'] = $this->getMockBuilder('OCP\\App\\IAppManager')
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Set default avtar behaviour for whole testsuite
|
||||||
|
*/
|
||||||
|
$this->container['OCP\\IAvatarManager'] = $this->getMock('OCP\IAvatarManager');
|
||||||
|
|
||||||
|
$avatarExists = $this->getMock('OCP\IAvatar');
|
||||||
|
$avatarExists->method('exists')->willReturn(true);
|
||||||
|
$avatarNotExists = $this->getMock('OCP\IAvatar');
|
||||||
|
$avatarNotExists->method('exists')->willReturn(false);
|
||||||
|
$this->container['OCP\\IAvatarManager']
|
||||||
|
->method('getAvatar')
|
||||||
|
->will($this->returnValueMap([
|
||||||
|
['foo', $avatarExists],
|
||||||
|
['bar', $avatarExists],
|
||||||
|
['admin', $avatarNotExists],
|
||||||
|
]));
|
||||||
|
|
||||||
|
$this->container['Config']
|
||||||
|
->method('getSystemValue')
|
||||||
|
->with('enable_avatars', true)
|
||||||
|
->willReturn(true);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testIndexAdmin() {
|
public function testIndexAdmin() {
|
||||||
|
@ -62,7 +86,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
$foo = $this->getMockBuilder('\OC\User\User')
|
$foo = $this->getMockBuilder('\OC\User\User')
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
$foo
|
$foo
|
||||||
->expects($this->exactly(2))
|
->expects($this->exactly(3))
|
||||||
->method('getUID')
|
->method('getUID')
|
||||||
->will($this->returnValue('foo'));
|
->will($this->returnValue('foo'));
|
||||||
$foo
|
$foo
|
||||||
|
@ -86,7 +110,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
$admin = $this->getMockBuilder('\OC\User\User')
|
$admin = $this->getMockBuilder('\OC\User\User')
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
$admin
|
$admin
|
||||||
->expects($this->exactly(2))
|
->expects($this->exactly(3))
|
||||||
->method('getUID')
|
->method('getUID')
|
||||||
->will($this->returnValue('admin'));
|
->will($this->returnValue('admin'));
|
||||||
$admin
|
$admin
|
||||||
|
@ -112,7 +136,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
$bar = $this->getMockBuilder('\OC\User\User')
|
$bar = $this->getMockBuilder('\OC\User\User')
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
$bar
|
$bar
|
||||||
->expects($this->exactly(2))
|
->expects($this->exactly(3))
|
||||||
->method('getUID')
|
->method('getUID')
|
||||||
->will($this->returnValue('bar'));
|
->will($this->returnValue('bar'));
|
||||||
$bar
|
$bar
|
||||||
|
@ -188,7 +212,6 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
->method('getSubAdmin')
|
->method('getSubAdmin')
|
||||||
->will($this->returnValue($subadmin));
|
->will($this->returnValue($subadmin));
|
||||||
|
|
||||||
|
|
||||||
$expectedResponse = new DataResponse(
|
$expectedResponse = new DataResponse(
|
||||||
array(
|
array(
|
||||||
0 => array(
|
0 => array(
|
||||||
|
@ -202,6 +225,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'backend' => 'OC_User_Database',
|
'backend' => 'OC_User_Database',
|
||||||
'email' => 'foo@bar.com',
|
'email' => 'foo@bar.com',
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
),
|
),
|
||||||
1 => array(
|
1 => array(
|
||||||
'name' => 'admin',
|
'name' => 'admin',
|
||||||
|
@ -214,6 +238,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'backend' => '\Test\Util\User\Dummy',
|
'backend' => '\Test\Util\User\Dummy',
|
||||||
'email' => 'admin@bar.com',
|
'email' => 'admin@bar.com',
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => false,
|
||||||
),
|
),
|
||||||
2 => array(
|
2 => array(
|
||||||
'name' => 'bar',
|
'name' => 'bar',
|
||||||
|
@ -226,6 +251,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'backend' => '\Test\Util\User\Dummy',
|
'backend' => '\Test\Util\User\Dummy',
|
||||||
'email' => 'bar@dummy.com',
|
'email' => 'bar@dummy.com',
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
@ -246,7 +272,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
$foo = $this->getMockBuilder('\OC\User\User')
|
$foo = $this->getMockBuilder('\OC\User\User')
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
$foo
|
$foo
|
||||||
->expects($this->exactly(2))
|
->expects($this->exactly(3))
|
||||||
->method('getUID')
|
->method('getUID')
|
||||||
->will($this->returnValue('foo'));
|
->will($this->returnValue('foo'));
|
||||||
$foo
|
$foo
|
||||||
|
@ -270,7 +296,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
$admin = $this->getMockBuilder('\OC\User\User')
|
$admin = $this->getMockBuilder('\OC\User\User')
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
$admin
|
$admin
|
||||||
->expects($this->exactly(2))
|
->expects($this->exactly(3))
|
||||||
->method('getUID')
|
->method('getUID')
|
||||||
->will($this->returnValue('admin'));
|
->will($this->returnValue('admin'));
|
||||||
$admin
|
$admin
|
||||||
|
@ -296,7 +322,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
$bar = $this->getMockBuilder('\OC\User\User')
|
$bar = $this->getMockBuilder('\OC\User\User')
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
$bar
|
$bar
|
||||||
->expects($this->exactly(2))
|
->expects($this->exactly(3))
|
||||||
->method('getUID')
|
->method('getUID')
|
||||||
->will($this->returnValue('bar'));
|
->will($this->returnValue('bar'));
|
||||||
$bar
|
$bar
|
||||||
|
@ -401,6 +427,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'backend' => '\Test\Util\User\Dummy',
|
'backend' => '\Test\Util\User\Dummy',
|
||||||
'email' => 'bar@dummy.com',
|
'email' => 'bar@dummy.com',
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
],
|
],
|
||||||
1=> [
|
1=> [
|
||||||
'name' => 'foo',
|
'name' => 'foo',
|
||||||
|
@ -413,6 +440,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'backend' => 'OC_User_Database',
|
'backend' => 'OC_User_Database',
|
||||||
'email' => 'foo@bar.com',
|
'email' => 'foo@bar.com',
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
],
|
],
|
||||||
2 => [
|
2 => [
|
||||||
'name' => 'admin',
|
'name' => 'admin',
|
||||||
|
@ -425,6 +453,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'backend' => '\Test\Util\User\Dummy',
|
'backend' => '\Test\Util\User\Dummy',
|
||||||
'email' => 'admin@bar.com',
|
'email' => 'admin@bar.com',
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => false,
|
||||||
],
|
],
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
|
@ -443,7 +472,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
$foo = $this->getMockBuilder('\OC\User\User')
|
$foo = $this->getMockBuilder('\OC\User\User')
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
$foo
|
$foo
|
||||||
->expects($this->exactly(2))
|
->expects($this->exactly(3))
|
||||||
->method('getUID')
|
->method('getUID')
|
||||||
->will($this->returnValue('foo'));
|
->will($this->returnValue('foo'));
|
||||||
$foo
|
$foo
|
||||||
|
@ -467,7 +496,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
$admin = $this->getMockBuilder('\OC\User\User')
|
$admin = $this->getMockBuilder('\OC\User\User')
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
$admin
|
$admin
|
||||||
->expects($this->exactly(2))
|
->expects($this->exactly(3))
|
||||||
->method('getUID')
|
->method('getUID')
|
||||||
->will($this->returnValue('admin'));
|
->will($this->returnValue('admin'));
|
||||||
$admin
|
$admin
|
||||||
|
@ -493,7 +522,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
$bar = $this->getMockBuilder('\OC\User\User')
|
$bar = $this->getMockBuilder('\OC\User\User')
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
$bar
|
$bar
|
||||||
->expects($this->exactly(2))
|
->expects($this->exactly(3))
|
||||||
->method('getUID')
|
->method('getUID')
|
||||||
->will($this->returnValue('bar'));
|
->will($this->returnValue('bar'));
|
||||||
$bar
|
$bar
|
||||||
|
@ -553,6 +582,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'backend' => 'OC_User_Database',
|
'backend' => 'OC_User_Database',
|
||||||
'email' => 'foo@bar.com',
|
'email' => 'foo@bar.com',
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
),
|
),
|
||||||
1 => array(
|
1 => array(
|
||||||
'name' => 'admin',
|
'name' => 'admin',
|
||||||
|
@ -565,6 +595,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'backend' => '\Test\Util\User\Dummy',
|
'backend' => '\Test\Util\User\Dummy',
|
||||||
'email' => 'admin@bar.com',
|
'email' => 'admin@bar.com',
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => false,
|
||||||
),
|
),
|
||||||
2 => array(
|
2 => array(
|
||||||
'name' => 'bar',
|
'name' => 'bar',
|
||||||
|
@ -577,6 +608,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'backend' => '\Test\Util\User\Dummy',
|
'backend' => '\Test\Util\User\Dummy',
|
||||||
'email' => 'bar@dummy.com',
|
'email' => 'bar@dummy.com',
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
@ -590,7 +622,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
$user = $this->getMockBuilder('\OC\User\User')
|
$user = $this->getMockBuilder('\OC\User\User')
|
||||||
->disableOriginalConstructor()->getMock();
|
->disableOriginalConstructor()->getMock();
|
||||||
$user
|
$user
|
||||||
->expects($this->exactly(2))
|
->expects($this->exactly(3))
|
||||||
->method('getUID')
|
->method('getUID')
|
||||||
->will($this->returnValue('foo'));
|
->will($this->returnValue('foo'));
|
||||||
$user
|
$user
|
||||||
|
@ -648,6 +680,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'backend' => 'OC_User_Database',
|
'backend' => 'OC_User_Database',
|
||||||
'email' => null,
|
'email' => null,
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
@ -719,6 +752,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'subadmin' => array(),
|
'subadmin' => array(),
|
||||||
'email' => null,
|
'email' => null,
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
),
|
),
|
||||||
Http::STATUS_CREATED
|
Http::STATUS_CREATED
|
||||||
);
|
);
|
||||||
|
@ -807,6 +841,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'subadmin' => [],
|
'subadmin' => [],
|
||||||
'email' => null,
|
'email' => null,
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
),
|
),
|
||||||
Http::STATUS_CREATED
|
Http::STATUS_CREATED
|
||||||
);
|
);
|
||||||
|
@ -889,6 +924,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'subadmin' => array(),
|
'subadmin' => array(),
|
||||||
'email' => null,
|
'email' => null,
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
),
|
),
|
||||||
Http::STATUS_CREATED
|
Http::STATUS_CREATED
|
||||||
);
|
);
|
||||||
|
@ -984,6 +1020,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'subadmin' => [],
|
'subadmin' => [],
|
||||||
'email' => null,
|
'email' => null,
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
),
|
),
|
||||||
Http::STATUS_CREATED
|
Http::STATUS_CREATED
|
||||||
);
|
);
|
||||||
|
@ -1480,6 +1517,7 @@ class UsersControllerTest extends \Test\TestCase {
|
||||||
'backend' => $backend,
|
'backend' => $backend,
|
||||||
'email' => null,
|
'email' => null,
|
||||||
'isRestoreDisabled' => false,
|
'isRestoreDisabled' => false,
|
||||||
|
'isAvatarAvailable' => true,
|
||||||
];
|
];
|
||||||
|
|
||||||
return [$user, $result];
|
return [$user, $result];
|
||||||
|
|
Loading…
Reference in New Issue