mirror of https://github.com/nextcloud/photos
Merge pull request #2431 from nextcloud/fix/folder-viewer
fix: Open Viewer when clicking on photo in folder
This commit is contained in:
commit
1b4e3b5a2d
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -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