diff options
Diffstat (limited to 'lib/private/user/user.php')
-rw-r--r-- | lib/private/user/user.php | 39 |
1 files changed, 35 insertions, 4 deletions
diff --git a/lib/private/user/user.php b/lib/private/user/user.php index 516c1d443c6..0f230d468fd 100644 --- a/lib/private/user/user.php +++ b/lib/private/user/user.php @@ -30,6 +30,7 @@ namespace OC\User; use OC\Hooks\Emitter; +use OC_Helper; use OCP\IAvatarManager; use OCP\IImage; use OCP\IURLGenerator; @@ -140,7 +141,7 @@ class User implements IUser { $result = $this->backend->setDisplayName($this->uid, $displayName); if ($result) { $this->displayName = $displayName; - $this->triggerChange(); + $this->triggerChange('displayName'); } return $result !== false; } else { @@ -161,7 +162,7 @@ class User implements IUser { } else { $this->config->setUserValue($this->uid, 'settings', 'email', $mailAddress); } - $this->triggerChange(); + $this->triggerChange('eMailAddress'); } /** @@ -339,6 +340,36 @@ class User implements IUser { } /** + * get the users' quota + * + * @return string + * @since 9.0.0 + */ + public function getQuota() { + $quota = $this->config->getUserValue($this->uid, 'files', 'quota', 'default'); + if($quota === 'default') { + $quota = $this->config->getAppValue('files', 'default_quota', 'none'); + } + return $quota; + } + + /** + * set the users' quota + * + * @param string $quota + * @return void + * @since 9.0.0 + */ + public function setQuota($quota) { + if($quota !== 'none' and $quota !== 'default') { + $quota= OC_Helper::computerFileSize($quota); + $quota=OC_Helper::humanFileSize($quota); + } + $this->config->setUserValue($this->uid, 'files', 'quota', $quota); + $this->triggerChange('quota'); + } + + /** * get the avatar image if it exists * * @param int $size @@ -386,9 +417,9 @@ class User implements IUser { return $url; } - public function triggerChange() { + public function triggerChange($feature) { if ($this->emitter) { - $this->emitter->emit('\OC\User', 'changeUser', array($this)); + $this->emitter->emit('\OC\User', 'changeUser', array($this, $feature)); } } |