diff --git a/lib/Controller/AlbumsController.php b/lib/Controller/AlbumsController.php index 6013da1ea0..cf8b2bc502 100644 --- a/lib/Controller/AlbumsController.php +++ b/lib/Controller/AlbumsController.php @@ -30,7 +30,6 @@ use OCP\AppFramework\Controller; use OCP\AppFramework\Http; use OCP\AppFramework\Http\JSONResponse; -use OCP\Constants; use OCP\Files\File; use OCP\Files\Folder; use OCP\Files\IRootFolder; @@ -110,7 +109,7 @@ private function formatData(iterable $nodes): array { 'mime' => $node->getMimetype(), 'size' => $node->getSize(), 'type' => $node->getType(), - 'permissions' => $this->formatPermissions($node->getPermissions()), + 'permissions' => $node->getPermissions(), 'hasPreview' => $this->previewManager->isAvailable($node), ]; } @@ -118,28 +117,6 @@ private function formatData(iterable $nodes): array { return $result; } - private function formatPermissions(int $permissions): string { - $strPermissions = ''; - if ($permissions) { - if ($permissions & Constants::PERMISSION_CREATE) { - $strPermissions .= 'CK'; - } - if ($permissions & Constants::PERMISSION_READ) { - $strPermissions .= 'G'; - } - if ($permissions & Constants::PERMISSION_UPDATE) { - $strPermissions .= 'W'; - } - if ($permissions & Constants::PERMISSION_DELETE) { - $strPermissions .= 'D'; - } - if ($permissions & Constants::PERMISSION_SHARE) { - $strPermissions .= 'R'; - } - } - return $strPermissions; - } - private function scanCurrentFolder(Folder $folder, bool $shared): iterable { $nodes = $folder->getDirectoryListing(); diff --git a/src/components/FilesPicker.vue b/src/components/FilesPicker.vue index fcc6e8d7c3..d87c5542c0 100644 --- a/src/components/FilesPicker.vue +++ b/src/components/FilesPicker.vue @@ -66,7 +66,7 @@
diff --git a/src/mixins/UserConfig.js b/src/mixins/UserConfig.js index d6c6f0e8a2..0c6ece5ca3 100644 --- a/src/mixins/UserConfig.js +++ b/src/mixins/UserConfig.js @@ -22,8 +22,10 @@ import { emit, subscribe, unsubscribe } from '@nextcloud/event-bus' import { generateUrl } from '@nextcloud/router' +import { davGetClient, davGetDefaultPropfind, davResultToNode, davRootPath } from '@nextcloud/files' import { loadState } from '@nextcloud/initial-state' import axios from '@nextcloud/axios' +import { joinPaths } from '@nextcloud/paths' const eventName = 'photos:user-config-changed' @@ -36,11 +38,15 @@ export default { ? croppedLayoutLocalStorage === 'true' : loadState('photos', 'croppedLayout', 'false') === 'true', photosLocation: loadState('photos', 'photosLocation', ''), + photosLocationFolder: null, } }, - created() { + async created() { subscribe(eventName, this.updateLocalSetting) + const davClient = davGetClient() + const stat = await davClient.stat(joinPaths(davRootPath, this.photosLocation), { details: true, data: davGetDefaultPropfind() }) + this.photosLocationFolder = davResultToNode(stat.data) }, beforeDestroy() { diff --git a/src/views/Folders.vue b/src/views/Folders.vue index 2188f9fdd1..d9550a609f 100644 --- a/src/views/Folders.vue +++ b/src/views/Folders.vue @@ -43,7 +43,7 @@ :root-title="rootTitle" @refresh="onRefresh"> @@ -65,7 +65,8 @@