From ad7686b7c200da114fdc596c237534b461d90906 Mon Sep 17 00:00:00 2001 From: TekH Date: Thu, 1 Oct 2026 11:42:31 +0200 Subject: [PATCH] Refactor EnvelopeSenderPage for WebAssembly support Updated EnvelopeSenderPage to use InteractiveWebAssembly rendering mode. Removed unused services and authentication logic, replacing `ReceiverPageDataService` with `DocumentService` for document retrieval. Improved error handling by replacing `NotFoundException` with `HttpRequestException` and a 404 status code check. --- .../Pages/EnvelopeSenderPage.razor | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) rename EnvelopeGenerator.Server/{EnvelopeGenerator.Server/Components => EnvelopeGenerator.Server.Client}/Pages/EnvelopeSenderPage.razor (98%) diff --git a/EnvelopeGenerator.Server/EnvelopeGenerator.Server/Components/Pages/EnvelopeSenderPage.razor b/EnvelopeGenerator.Server/EnvelopeGenerator.Server.Client/Pages/EnvelopeSenderPage.razor similarity index 98% rename from EnvelopeGenerator.Server/EnvelopeGenerator.Server/Components/Pages/EnvelopeSenderPage.razor rename to EnvelopeGenerator.Server/EnvelopeGenerator.Server.Client/Pages/EnvelopeSenderPage.razor index e9222313..b56dc33a 100644 --- a/EnvelopeGenerator.Server/EnvelopeGenerator.Server/Components/Pages/EnvelopeSenderPage.razor +++ b/EnvelopeGenerator.Server/EnvelopeGenerator.Server.Client/Pages/EnvelopeSenderPage.razor @@ -1,5 +1,5 @@ @page "/sender" -@rendermode InteractiveServer +@rendermode InteractiveWebAssembly @using System.Text.Json @using EnvelopeGenerator.Domain.Constants @using EnvelopeGenerator.Server.Client.Models @@ -10,15 +10,13 @@ @using EnvelopeGenerator.Application.Common.Dto.History @using EnvelopeGenerator.Application.Resources @using EnvelopeGenerator.Domain.Resources -@using EnvelopeGenerator.Server.Services @using Microsoft.Extensions.Localization @inject EnvelopeGenerator.Server.Client.Services.EnvelopeService EnvelopeService +@inject EnvelopeGenerator.Server.Client.Services.DocumentService DocumentService @inject EnvelopeGenerator.Server.Client.Services.AuthService AuthService @inject EnvelopeGenerator.Server.Client.Services.ThemeService ThemeService @inject EnvelopeGenerator.Server.Client.Services.UserPreferencesService UserPreferencesService @inject EnvelopeGenerator.Server.Client.Services.CustomImagesService CustomImagesService -@inject EnvelopeReceiverPageDataService ReceiverPageDataService -@inject IEnvelopeAuthService EnvelopeAuthService @inject ILogger Logger @inject NavigationManager Navigation @inject IJSRuntime JSRuntime @@ -969,19 +967,12 @@ try { - var user = EnvelopeAuthService.GetCurrentUser(); - if (user?.Identity is null || !user.Identity.IsAuthenticated) - { - _previewErrorMessage = L("NotAuthenticatedPleaseLoginAgain", "Nicht authentifiziert. Bitte melden Sie sich erneut an."); - return; - } - - _previewPdfBytes = await ReceiverPageDataService.GetDocumentOfSenderAsync(user, envelope.Id); + _previewPdfBytes = await DocumentService.GetSenderDocumentBytesByEnvelopeIdAsync(envelope.Id); // PDF ready — mount the viewer now _previewViewerMounted = true; } - catch (DigitalData.Core.Exceptions.NotFoundException) + catch (HttpRequestException ex) when ((int?)ex.StatusCode == 404) { _previewErrorMessage = string.Format( L("Sender_PreviewDocumentNotFound", "Das Dokument für Umschlag #{0} wurde nicht gefunden oder Sie haben keinen Zugriff darauf."),