feat: Share-Link Typ 'Nur Upload' (upload_only)
Dritter Link-Typ neben read und write: - upload_only: Nur Dateien hochladen, kein Download, kein Ordnerinhalt sichtbar, Ordnername wird nicht angezeigt Backend-Absicherung: - GET /share/<token>/download gibt 403 bei upload_only - POST /share/<token>/upload erlaubt upload_only + write - GET /share/<token>/info gibt download_allowed zurueck Frontend Share-Dialog: - Drei Optionen: Nur Lesen / Lesen+Hochladen / Nur Upload - Bestehende Links zeigen Typ an Frontend ShareView: - upload_only: Zeigt nur Upload-Zone, kein Dateiname, kein Download - Hinweistext 'Dieser Link erlaubt nur das Hochladen von Dateien' Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -184,7 +184,7 @@
|
||||
<div class="link-info">
|
||||
<code>{{ currentOrigin }}/share/{{ link.token }}</code>
|
||||
<small>
|
||||
{{ link.permission === 'write' ? 'Lesen+Schreiben' : 'Nur Lesen' }}
|
||||
{{ {read: 'Nur Lesen', write: 'Lesen+Schreiben', upload_only: 'Nur Upload'}[link.permission] || link.permission }}
|
||||
| {{ link.download_count }} Downloads
|
||||
<template v-if="link.expires_at"> | Bis {{ formatDate(link.expires_at) }}</template>
|
||||
<template v-if="link.has_password"> | Passwortgeschuetzt</template>
|
||||
@@ -255,7 +255,11 @@ const selectedShareUser = ref(null)
|
||||
const shareUserPermission = ref('read')
|
||||
const userSearchResults = ref([])
|
||||
const userPermOptions = [{ label: 'Lesen', value: 'read' }, { label: 'Schreiben', value: 'write' }, { label: 'Admin', value: 'admin' }]
|
||||
const linkPermOptions = [{ label: 'Nur Lesen (Download)', value: 'read' }, { label: 'Lesen + Hochladen (nur Ordner)', value: 'write' }]
|
||||
const linkPermOptions = [
|
||||
{ label: 'Nur Lesen (Download)', value: 'read' },
|
||||
{ label: 'Lesen + Hochladen (nur Ordner)', value: 'write' },
|
||||
{ label: 'Nur Upload (Ordner, kein Einblick)', value: 'upload_only' },
|
||||
]
|
||||
const shareLinkPermission = ref('read')
|
||||
const currentOrigin = window.location.origin
|
||||
const shareLoading = ref(false)
|
||||
|
||||
Reference in New Issue
Block a user