diff --git a/lib/Controller/ImageController.php b/lib/Controller/ImageController.php index 0496d8f73..3a3c00dc1 100644 --- a/lib/Controller/ImageController.php +++ b/lib/Controller/ImageController.php @@ -193,15 +193,17 @@ public function info( // Get the image info $info = $this->timelineQuery->getInfoById($file->getId(), $basic); - // Get list of tags for this file - if ($tags) { - $info['tags'] = $this->getTags($file->getId()); - } + // Allow these ony for logged in users + if (null !== $this->userSession->getUser()) { + // Get list of tags for this file + if ($tags) { + $info['tags'] = $this->getTags($file->getId()); + } - // Get latest exif data if requested - // Allow this ony for logged in users - if ($current && null !== $this->userSession->getUser()) { - $info['current'] = Exif::getExifFromFile($file); + // Get latest exif data if requested + if ($current) { + $info['current'] = Exif::getExifFromFile($file); + } } return new JSONResponse($info, Http::STATUS_OK); diff --git a/src/App.vue b/src/App.vue index ed1947dbb..8d7c511a9 100644 --- a/src/App.vue +++ b/src/App.vue @@ -191,6 +191,11 @@ export default defineComponent({ // Register sidebar metadata tab const OCA = globalThis.OCA; if (OCA.Files && OCA.Files.Sidebar) { + const pf = (fileInfo) => { + fileInfo.fileid = Number(fileInfo.id); + return fileInfo; + }; + OCA.Files.Sidebar.registerTab( new OCA.Files.Sidebar.Tab({ id: "memories-metadata", @@ -201,10 +206,10 @@ export default defineComponent({ this.metadataComponent?.$destroy?.(); this.metadataComponent = new Vue(Metadata as any); this.metadataComponent.$mount(el); - this.metadataComponent.update(fileInfo); + this.metadataComponent.update(pf(fileInfo)); }, update(fileInfo) { - this.metadataComponent.update(fileInfo); + this.metadataComponent.update(pf(fileInfo)); }, destroy() { this.metadataComponent?.$destroy?.(); diff --git a/src/components/Metadata.vue b/src/components/Metadata.vue index ce707fab3..c9968051e 100644 --- a/src/components/Metadata.vue +++ b/src/components/Metadata.vue @@ -308,7 +308,7 @@ export default defineComponent({ this.exif = {}; const state = this.state; - const url = API.Q(API.IMAGE_INFO(fileInfo.id), "tags=1"); + const url = API.Q(API.IMAGE_INFO(fileInfo.fileid), "tags=1"); const res = await axios.get(url); if (state !== this.state) return; diff --git a/src/components/Sidebar.vue b/src/components/Sidebar.vue index fb3d874d2..6ecaf7330 100644 --- a/src/components/Sidebar.vue +++ b/src/components/Sidebar.vue @@ -1,18 +1,46 @@