Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/spreed.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorVincent Petry <vincent@nextcloud.com>2021-01-27 19:26:54 +0300
committerVincent Petry <vincent@nextcloud.com>2021-01-28 18:02:07 +0300
commitb8fd42777240075f6452fc13f8a384c5b94ca679 (patch)
tree93239442e9f8a6779bcef74499982746bb20a372 /lib
parentdcbb63d4e54f40cbcb0bc76c31d0d641f8f191de (diff)
Hide upload button with zero quota
Whenever a user has zero quota, for example like guest app users, don't display the upload button. The quota value is retrieved for the attachment folder. Signed-off-by: Vincent Petry <vincent@nextcloud.com>
Diffstat (limited to 'lib')
-rw-r--r--lib/TInitialState.php26
1 files changed, 21 insertions, 5 deletions
diff --git a/lib/TInitialState.php b/lib/TInitialState.php
index 802deb6a6..b8a90082b 100644
--- a/lib/TInitialState.php
+++ b/lib/TInitialState.php
@@ -98,17 +98,23 @@ trait TInitialState {
);
$attachmentFolder = $this->talkConfig->getAttachmentFolder($user->getUID());
+ $freeSpace = 0;
if ($attachmentFolder) {
try {
$userFolder = $rootFolder->getUserFolder($user->getUID());
- if (!$userFolder->nodeExists($attachmentFolder)) {
- $userFolder->newFolder($attachmentFolder);
+ try {
+ if (!$userFolder->nodeExists($attachmentFolder)) {
+ $userFolder->newFolder($attachmentFolder);
+ }
+
+ $freeSpace = $userFolder->get($attachmentFolder)->getFreeSpace();
+ } catch (NotPermittedException $e) {
+ $attachmentFolder = '/';
+ $this->serverConfig->setUserValue($user->getUID(), 'spreed', 'attachment_folder', '/');
+ $freeSpace = $userFolder->getFreeSpace();
}
- } catch (NotPermittedException $e) {
- $attachmentFolder = '/';
- $this->serverConfig->setUserValue($user->getUID(), 'spreed', 'attachment_folder', '/');
} catch (NoUserException $e) {
}
}
@@ -119,6 +125,11 @@ trait TInitialState {
);
$this->initialState->provideInitialState(
+ 'attachment_folder_free_space',
+ $freeSpace
+ );
+
+ $this->initialState->provideInitialState(
'enable_matterbridge',
$this->serverConfig->getAppValue('spreed', 'enable_matterbridge', '0') === '1'
);
@@ -148,6 +159,11 @@ trait TInitialState {
);
$this->initialState->provideInitialState(
+ 'attachment_folder_free_space',
+ ''
+ );
+
+ $this->initialState->provideInitialState(
'enable_matterbridge',
false
);