reduce adressbook change events and handling

... from four to one on avatar updates

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
pull/17001/head
Arthur Schiwon 7 years ago
parent 0e19e55e24
commit 3ce5d4e545
No known key found for this signature in database
GPG Key ID: 7424F1874854DF23
  1. 2
      apps/user_ldap/lib/User_Proxy.php
  2. 8
      lib/private/Avatar/UserAvatar.php

@ -253,7 +253,7 @@ class User_Proxy extends Proxy implements \OCP\IUserBackend, \OCP\UserInterface,
* @return boolean either the user can or cannot
*/
public function canChangeAvatar($uid) {
return $this->handleRequest($uid, 'canChangeAvatar', array($uid));
return $this->handleRequest($uid, 'canChangeAvatar', [$uid], true);
}
/**

@ -97,7 +97,7 @@ class UserAvatar extends Avatar {
$this->validateAvatar($img);
$this->remove();
$this->remove(true);
$type = $this->getAvatarImageType($img);
$file = $this->folder->newFile('avatar.' . $type);
$file->putContent($data);
@ -193,7 +193,7 @@ class UserAvatar extends Avatar {
* @throws \OCP\Files\NotPermittedException
* @throws \OCP\PreConditionNotMetException
*/
public function remove() {
public function remove(bool $silent = false) {
$avatars = $this->folder->getDirectoryListing();
$this->config->setUserValue($this->user->getUID(), 'avatar', 'version',
@ -203,7 +203,9 @@ class UserAvatar extends Avatar {
$avatar->delete();
}
$this->config->setUserValue($this->user->getUID(), 'avatar', 'generated', 'true');
$this->user->triggerChange('avatar', '');
if(!$silent) {
$this->user->triggerChange('avatar', '');
}
}
/**

Loading…
Cancel
Save