From 7c31fba83a4105df7738bd8e47a7feb11284cd0c Mon Sep 17 00:00:00 2001 From: Philipp Dormann Date: Wed, 2 Apr 2025 21:48:37 +0200 Subject: [PATCH] wip --- .../DownloadProgressModal.svelte | 81 +++++++++++++++++++ .../GenerateSponsoringContracts.svelte | 12 ++- 2 files changed, 91 insertions(+), 2 deletions(-) create mode 100644 src/components/pdf_generation/DownloadProgressModal.svelte diff --git a/src/components/pdf_generation/DownloadProgressModal.svelte b/src/components/pdf_generation/DownloadProgressModal.svelte new file mode 100644 index 00000000..17df27a2 --- /dev/null +++ b/src/components/pdf_generation/DownloadProgressModal.svelte @@ -0,0 +1,81 @@ + + +{#if modal_open} +
{ + modal_open = false; + }} + > +
+ +
+{/if} diff --git a/src/components/pdf_generation/GenerateSponsoringContracts.svelte b/src/components/pdf_generation/GenerateSponsoringContracts.svelte index 1e79916c..75525b27 100644 --- a/src/components/pdf_generation/GenerateSponsoringContracts.svelte +++ b/src/components/pdf_generation/GenerateSponsoringContracts.svelte @@ -7,6 +7,7 @@ import DocumentServer from "./DocumentServer"; import { init } from "@paralleldrive/cuid2"; import toast from "svelte-french-toast"; + import DownloadProgressModal from "./DownloadProgressModal.svelte"; const createId = init({ length: 10, fingerprint: "lfk-frontend" }); const documentServer = new DocumentServer( config.baseurl_documentserver, @@ -17,8 +18,15 @@ export let generate_runners = []; export let generate_orgs = []; export let generate_teams = []; + // + export let download_modal_open = false; + export let download_now = 0; + export let download_total = 0; + export let download_details = []; function generateSponsoringContract(locale) { + download_modal_open = true; + download_now = 0; if (generate_orgs.length > 0) { generateOrgContracts(locale); } else if (generate_teams.length > 0) { @@ -61,9 +69,8 @@ async function generateOrgContracts(locale) { toast.loading($_("generating-pdf")); - let count_orgs = 0; + download_total = generate_orgs.length; for (const o of generate_orgs) { - count_orgs++; let count = 0; let runners = await RunnerOrganizationService.runnerOrganizationControllerGetRunners( @@ -119,6 +126,7 @@ {#if sponsoring_contracts_show} +