@samitouri / QOSami-HFS / commits / 30a41387

fix: delete command was not visible if permission was assigned to individual files

Massimo Melina committed Jul 21, 2023 at 22:33 UTC 30a41387c32afe7f5e8cd78e5d92f61de6d55426
2 files changed +5 -4
frontend/src/fileMenu.ts
+1 -1
@@ -30,7 +30,7 @@ export function openFileMenu(entry: DirEntry, ev: MouseEvent, addToMenu: (FileMe
30 return !isFolder ? open : h(Link, { to: uri, onClick: () => close() }, hIcon(open.icon), open.label)
31 }
32 if (x === 'delete')
33 - return state.can_delete && {
33 + return (state.can_delete || entry.p?.includes('d')) && {
34 label: t`Delete`,
35 icon: 'trash',
36 onClick: () => deleteFiles([entry.uri])
src/api.file_list.ts
+4 -3
@@ -108,17 +108,18 @@ async function nodeToDirEntry(ctx: Koa.Context, node: VfsNode): Promise<DirEntry
108 const { ctime, mtime } = st
109 const pl = node.can_list === WHO_NO_ONE ? 'l'
110 : !hasPermission(node, 'can_list', ctx) ? 'L'
111 - : ''
111 + : ''
112 // no download here, but maybe inside?
113 const pr = node.can_read === WHO_NO_ONE && !(folder && filesInsideCould()) ? 'r'
114 : !hasPermission(node, 'can_read', ctx) ? 'R'
115 - : ''
115 + : ''
116 + const pd = hasPermission(node, 'can_delete', ctx) ? 'd' : ''
117 return {
118 n: name + (folder ? '/' : ''),
119 c: ctime,
120 m: Math.abs(+mtime-+ctime) < 1000 ? undefined : mtime,
121 s: folder ? undefined : st.size,
121 - p: (pr + pl) || undefined
122 + p: (pr + pl + pd) || undefined
123 }
124 }
125 catch {