From d37e02e15746f87f0a9260f601a84e8f72789bb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20P=C3=B6ttker?= Date: Wed, 4 Nov 2026 10:48:01 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20Paperless-PDF=20auch=20f=C3=BCr=20den=20?= =?UTF-8?q?Duplikatvergleich=20im=20Mail-Import?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit DuplikatVergleichModal lädt das vorhandene Paperless-Dokument über documents/:id/pdf – auch im Mail-Import (VIEW_MAIL). Die Route verlangte nur VIEW_INBOX/VIEW_SCANNER, reine Mail-Nutzer bekamen 403. Co-Authored-By: Claude Opus 5.5 --- .../src/paperless/paperless.controller.ts | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/paperless-backend/src/paperless/paperless.controller.ts b/paperless-backend/src/paperless/paperless.controller.ts index 89ecd51..14e7ee0 100644 --- a/paperless-backend/src/paperless/paperless.controller.ts +++ b/paperless-backend/src/paperless/paperless.controller.ts @@ -276,12 +276,16 @@ export class PaperlessController { } /** - * Original-PDF – für den Bearbeiten-Dialog und den Duplikatvergleich im - * Scanner (dort ein beliebiges vorhandenes Dokument), deshalb ohne Prüfung - * pro Dokument. + * Original-PDF – für den Bearbeiten-Dialog und den Duplikatvergleich in + * Scanner und Mail-Import (dort ein beliebiges vorhandenes Dokument), + * deshalb ohne Prüfung pro Dokument. */ @Get('documents/:id/pdf') - @RequirePermissions(Permission.VIEW_INBOX, Permission.VIEW_SCANNER) + @RequirePermissions( + Permission.VIEW_INBOX, + Permission.VIEW_SCANNER, + Permission.VIEW_MAIL, + ) async getDocumentPdf(@Param('id') id: string, @Res() res: Response) { try { const stream = await this.paperlessService.getDocumentPdfStream(