diff --git a/lib/Controller/WorkspaceController.php b/lib/Controller/WorkspaceController.php
index 381c1cd38..6d6397598 100644
--- a/lib/Controller/WorkspaceController.php
+++ b/lib/Controller/WorkspaceController.php
@@ -86,8 +86,8 @@ private function deleteBlankSpaceName(string $spaceName): string {
* @GeneralManagerRequired
* @param string $spaceName
*/
- public function createWorkspace(string $spaceName): JSONResponse {
- $workspace = $this->spaceManager->create($spaceName);
+ public function createWorkspace(string $spaceName, ?string $colorCode = null, int $quota = -3): JSONResponse {
+ $workspace = $this->spaceManager->create($spaceName, $colorCode, $quota);
return new JSONResponse(
array_merge(
diff --git a/lib/Space/SpaceManager.php b/lib/Space/SpaceManager.php
index f94b5de78..685b1553b 100644
--- a/lib/Space/SpaceManager.php
+++ b/lib/Space/SpaceManager.php
@@ -82,7 +82,7 @@ public function __construct(
) {
}
- public function create(string $spacename): array {
+ public function create(string $spacename, ?string $colorCode = null, int $quota = -3): array {
if ($spacename === false
|| $spacename === null
|| $spacename === ''
@@ -102,10 +102,18 @@ public function create(string $spacename): array {
$folderId = $this->folderHelper->createFolder($spacename);
+ if ($quota !== -3) {
+ $this->folderHelper->setFolderQuota($folderId, $quota);
+ }
+
+ if ($colorCode === null) {
+ $colorCode = $this->colorCode->generate();
+ }
+
$space = new Space();
$space->setSpaceName($spacename);
$space->setGroupfolderId($folderId);
- $space->setColorCode($this->colorCode->generate());
+ $space->setColorCode($colorCode);
$this->spaceMapper->insert($space);
@@ -154,7 +162,7 @@ public function create(string $spacename): array {
$newSpaceUsersGroup
]),
'added_groups' => (object)[],
- 'quota' => $groupfolder['quota'],
+ 'quota' => $quota,
'size' => $groupfolder['size'],
'acl' => $groupfolder['acl'],
'manage' => $groupfolder['manage'],
diff --git a/src/LeftSidebar.vue b/src/LeftSidebar.vue
index 2ffdb7611..fcb04490f 100644
--- a/src/LeftSidebar.vue
+++ b/src/LeftSidebar.vue
@@ -20,55 +20,68 @@
along with this program. If not, see .
-->
-
-
-
-
-
-
-
-
-
+