mirror of https://github.com/nextcloud/photos
fix: Open Viewer when clicking on photo in folder
Signed-off-by: Christopher Ng <chrng8@gmail.com>
This commit is contained in:
parent
7208122d0a
commit
7566eedaf8
|
@ -30,6 +30,7 @@ use OCA\Photos\AppInfo\Application;
|
|||
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;
|
||||
|
@ -109,7 +110,7 @@ class AlbumsController extends Controller {
|
|||
'mime' => $node->getMimetype(),
|
||||
'size' => $node->getSize(),
|
||||
'type' => $node->getType(),
|
||||
'permissions' => $node->getPermissions(),
|
||||
'permissions' => $this->formatPermissions($node->getPermissions()),
|
||||
'hasPreview' => $this->previewManager->isAvailable($node),
|
||||
];
|
||||
}
|
||||
|
@ -117,6 +118,28 @@ class AlbumsController extends Controller {
|
|||
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();
|
||||
|
||||
|
|
|
@ -165,7 +165,7 @@
|
|||
<script>
|
||||
import { mapActions } from 'vuex'
|
||||
|
||||
import { Folder, addNewFileMenuEntry, removeNewFileMenuEntry } from '@nextcloud/files'
|
||||
import { Folder, addNewFileMenuEntry, removeNewFileMenuEntry, davParsePermissions } from '@nextcloud/files'
|
||||
import { getCurrentUser } from '@nextcloud/auth'
|
||||
import { NcActions, NcActionButton, NcButton, NcDialog, NcModal, NcEmptyContent, NcActionSeparator, NcLoadingIcon, isMobile } from '@nextcloud/vue'
|
||||
import { UploadPicker, getUploader } from '@nextcloud/upload'
|
||||
|
@ -315,6 +315,7 @@ export default {
|
|||
...this.album,
|
||||
owner: getCurrentUser()?.uid ?? '',
|
||||
source: this.album?.source ?? '',
|
||||
permissions: davParsePermissions(this.album.permissions),
|
||||
})
|
||||
},
|
||||
},
|
||||
|
|
|
@ -70,7 +70,7 @@
|
|||
<script>
|
||||
import { mapGetters } from 'vuex'
|
||||
import { Upload, UploadPicker, getUploader } from '@nextcloud/upload'
|
||||
import { Folder as NcFolder } from '@nextcloud/files'
|
||||
import { Folder as NcFolder, davParsePermissions } from '@nextcloud/files'
|
||||
import { NcEmptyContent } from '@nextcloud/vue'
|
||||
import VirtualGrid from 'vue-virtual-grid'
|
||||
|
||||
|
@ -147,6 +147,7 @@ export default {
|
|||
return new NcFolder({
|
||||
...this.folder,
|
||||
source: decodeURI(this.folder.source),
|
||||
permissions: davParsePermissions(this.folder.permissions),
|
||||
})
|
||||
},
|
||||
folderContent() {
|
||||
|
|
Loading…
Reference in New Issue