fix(quick-261009-dkv): Pfade woertlich, Zaehler und Serverdatum, Rechte des Ordners (Schnittstelle)
- Pfade, Ziele und Empfaengerkennungen der Freigaben bleiben woertlich (nur Anzeigetexte werden bereinigt) - Weitergaben als eigene Freigaben mit eigenem Pfad; accessOf nach Eintragsart - Begrenzung: 10 neue Freigaben je 10 Minuten, 40 Versuche je 10 Minuten vor den Abfragen an die Nextcloud, leere Zaehler werden entfernt - Freigaberegeln nennen das Serverdatum, die Ordnerliste die Berechtigungsbuchstaben des Ordners selbst - Live-Test: Ablehnen offener Freigaben, Weitergabe, Buchstaben des Ordners Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -18,6 +18,8 @@ export interface ListingView {
|
||||
entries: NcEntry[];
|
||||
quota: NcQuota;
|
||||
truncated: boolean;
|
||||
/** Berechtigungsbuchstaben des Ordners selbst (z. B. `RGDNVCK`); null, wenn Nextcloud sie nicht nennt. */
|
||||
permissions: string | null;
|
||||
}
|
||||
|
||||
/** Vorschaubilder: hoechstens 5 MiB, nur Bilder (D-K). */
|
||||
@@ -61,8 +63,14 @@ export class NextcloudFilesService {
|
||||
const session = await this.session(tenantId, userId);
|
||||
const result = await dav.list(this.transport, this.gate, session, segments);
|
||||
if (!result.ok || result.listing === null) return this.fail(tenantId, userId, result);
|
||||
const { entries, quota, truncated } = result.listing;
|
||||
return { path: pathOf(segments), entries, quota, truncated };
|
||||
const { entries, quota, truncated, folderPermissions } = result.listing;
|
||||
return {
|
||||
path: pathOf(segments),
|
||||
entries,
|
||||
quota,
|
||||
truncated,
|
||||
permissions: folderPermissions,
|
||||
};
|
||||
}
|
||||
|
||||
async createFolder(tenantId: string, userId: string, rawPath: string): Promise<{ path: string }> {
|
||||
|
||||
Reference in New Issue
Block a user