diff --git a/src/components/pdf_generation/DownloadProgressModal.svelte b/src/components/pdf_generation/DownloadProgressModal.svelte index 17df27a2..8cf57a8b 100644 --- a/src/components/pdf_generation/DownloadProgressModal.svelte +++ b/src/components/pdf_generation/DownloadProgressModal.svelte @@ -2,7 +2,7 @@ import { _ } from "svelte-i18n"; import { clickOutside } from "../base/outsideclick"; import { onMount } from "svelte"; - export let download_details = []; + export let download_details = ""; export let modal_open; onMount(() => { document.onkeydown = (e) => { @@ -65,12 +65,12 @@ /> -
+

Download läuft...

- {JSON.stringify(download_details)} + {download_details}
diff --git a/src/components/pdf_generation/GenerateSponsoringContracts.svelte b/src/components/pdf_generation/GenerateSponsoringContracts.svelte index 23f95908..731f5581 100644 --- a/src/components/pdf_generation/GenerateSponsoringContracts.svelte +++ b/src/components/pdf_generation/GenerateSponsoringContracts.svelte @@ -20,13 +20,10 @@ export let generate_teams = []; // export let download_modal_open = false; - export let download_now = 0; - export let download_total = 0; - export let download_details = []; + 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) { @@ -69,19 +66,24 @@ async function generateOrgContracts(locale) { toast.loading($_("generating-pdf")); - download_total = generate_orgs.length; + let totalCount = 0; for (const o of generate_orgs) { - let count = 0; + totalCount++; + for (const t of o.teams) { + totalCount++; + } + } + console.log({ totalCount }); + let count = 0; + for (const o of generate_orgs) { + count++; let runners = await RunnerOrganizationService.runnerOrganizationControllerGetRunners( o.id, true ); if (runners.length > 0) { - download_details.push({ - name: runners[0].group.name, - downloaded: false, - }); + download_details = runners[0].group.name; } await documentServer .generateContracts(runners, locale) @@ -97,6 +99,9 @@ let runners = await RunnerTeamService.runnerTeamControllerGetRunners( t.id ); + if (runners.length > 0) { + download_details = runners[0].group.name; + } await documentServer .generateContracts(runners, locale) .then((blob) => { @@ -106,6 +111,10 @@ t.name }-${locale}-${createId()}.pdf` ); + console.log({ count }); + if (count === totalCount) { + download_modal_open = false; + } }) .catch((err) => {}); }