Compare commits
	
		
			26 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 9c5fc6b61c | |||
| 302caf015f | |||
| e11296071a | |||
| 112eb29f93 | |||
| c6c97516b3 | |||
| 03676b2894 | |||
| 9ca57fac2e | |||
| 18f151c1fb | |||
| e90e56d8b2 | |||
| d241ca5698 | |||
| b512cf8667 | |||
| a24d2923c6 | |||
| 467808abef | |||
| 861f1f2216 | |||
| 509b22bea0 | |||
| 7447b2f4c1 | |||
| fef14b6e4f | |||
| 01d2a7e6aa | |||
| ac586fec5a | |||
| 5476808683 | |||
| 331d737796 | |||
| ef81b8adf9 | |||
| 8a7d635cef | |||
| 4c259c1eef | |||
| 5b4ede5e2f | |||
| d0ab3dda78 | 
| @@ -27,7 +27,7 @@ name: build:dev | |||||||
| steps: | steps: | ||||||
|   - name: run full license export |   - name: run full license export | ||||||
|     depends_on: ["clone"] |     depends_on: ["clone"] | ||||||
|     image: node:alpine |     image: registry.odit.services/hub/library/node:alpine | ||||||
|     commands: |     commands: | ||||||
|       - yarn |       - yarn | ||||||
|       - yarn licenses:export |       - yarn licenses:export | ||||||
|   | |||||||
							
								
								
									
										51
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										51
									
								
								CHANGELOG.md
									
									
									
									
									
								
							| @@ -2,12 +2,63 @@ | |||||||
|  |  | ||||||
| All notable changes to this project will be documented in this file. Dates are displayed in UTC. | All notable changes to this project will be documented in this file. Dates are displayed in UTC. | ||||||
|  |  | ||||||
|  | #### [0.14.0](https://git.odit.services/lfk/frontend/compare/0.13.1...0.14.0) | ||||||
|  |  | ||||||
|  | - Merge pull request 'added donor receipt list download to DonorsOverview' (#134) from feature/132-export-donors-receipt-list into dev [`#132`](https://git.odit.services/lfk/frontend/issues/132) | ||||||
|  | - Sorted translations 🌎 [`c6c9751`](https://git.odit.services/lfk/frontend/commit/c6c97516b3981ef580d620c0c8a6fcc42f26facd) | ||||||
|  | - Fixed typos in translations [`03676b2`](https://git.odit.services/lfk/frontend/commit/03676b2894892c3559118b93e969c063b53b081e) | ||||||
|  | - added donor receipt list download to DonorsOverview [`d241ca5`](https://git.odit.services/lfk/frontend/commit/d241ca569838abbe9581fbd319f7f3b563cb7dcc) | ||||||
|  | - ⏫ general version bump [`18f151c`](https://git.odit.services/lfk/frontend/commit/18f151c1fb878a74c3d1a2c2a2debf7913739417) | ||||||
|  | - new license file version [CI SKIP] [`302caf0`](https://git.odit.services/lfk/frontend/commit/302caf015f88f77e2b2ae2b67680e79f987ad81e) | ||||||
|  | - Switched to selfhosted images [`112eb29`](https://git.odit.services/lfk/frontend/commit/112eb29f932cd936f1d6c2308dcaeaf8cb642490) | ||||||
|  | - ⏫ bump @odit/lfk-client-js@0.11.0 [`9ca57fa`](https://git.odit.services/lfk/frontend/commit/9ca57fac2eeabbf25142a507fb9c0fa3c90b4e74) | ||||||
|  | - replace donationAmount with paidDonationAmount [`e90e56d`](https://git.odit.services/lfk/frontend/commit/e90e56d8b26aef23aba2bbb0c3942ba4d7feb224) | ||||||
|  |  | ||||||
|  | #### [0.13.1](https://git.odit.services/lfk/frontend/compare/0.13.0...0.13.1) | ||||||
|  |  | ||||||
|  | > 11 April 2021 | ||||||
|  |  | ||||||
|  | - 🚀RELEASE v0.13.1 [`b512cf8`](https://git.odit.services/lfk/frontend/commit/b512cf86674f1c60b5ac790985ededdfd6554185) | ||||||
|  | - For await fix [`a24d292`](https://git.odit.services/lfk/frontend/commit/a24d2923c6e6da90d610c05183d29d47eaf2ed30) | ||||||
|  |  | ||||||
|  | #### [0.13.0](https://git.odit.services/lfk/frontend/compare/0.12.5...0.13.0) | ||||||
|  |  | ||||||
|  | > 11 April 2021 | ||||||
|  |  | ||||||
|  | - 🚀RELEASE v0.13.0 [`467808a`](https://git.odit.services/lfk/frontend/commit/467808abefe127dac66a2837fcce3197dddb140f) | ||||||
|  | - Merge pull request 'Better org pdf generation feature/130-org_doc_splitting' (#131) from feature/130-org_doc_splitting into dev [`861f1f2`](https://git.odit.services/lfk/frontend/commit/861f1f221653283e7586aa2c67b205337fd44398) | ||||||
|  | - Org card generation now runs in sequence [`fef14b6`](https://git.odit.services/lfk/frontend/commit/fef14b6e4fb47ad92da61de91fedce96aea26b2c) | ||||||
|  | - Org certificate generation now runs in sequence [`509b22b`](https://git.odit.services/lfk/frontend/commit/509b22bea0dd3e4446e6ecc37d27644e9bf2ad50) | ||||||
|  | - Org contract generation now runs in sequence [`01d2a7e`](https://git.odit.services/lfk/frontend/commit/01d2a7e6aa709b3f2d71575f705fc962e97e2742) | ||||||
|  | - Emergency document server url change [`5476808`](https://git.odit.services/lfk/frontend/commit/5476808683a919bc34dbaea1f1ed276d49750096) | ||||||
|  | - Fixed const -> let [`7447b2f`](https://git.odit.services/lfk/frontend/commit/7447b2f4c134a585905db6733093eab13e6f7c47) | ||||||
|  | - Hotfix: Org * generation🐞 [`ac586fe`](https://git.odit.services/lfk/frontend/commit/ac586fec5abd324d590ba99cdfe8ddddefbf95e6) | ||||||
|  |  | ||||||
|  | #### [0.12.5](https://git.odit.services/lfk/frontend/compare/0.12.4...0.12.5) | ||||||
|  |  | ||||||
|  | > 8 April 2021 | ||||||
|  |  | ||||||
|  | - 🚀RELEASE v0.12.5 [`331d737`](https://git.odit.services/lfk/frontend/commit/331d737796c82454b1c19fa1840ccc20e36d2626) | ||||||
|  | - Merge pull request 'Added runner team's parentorg name to runenr overciew' (#129) from feature/128-runner_orgs into dev [`ef81b8a`](https://git.odit.services/lfk/frontend/commit/ef81b8adf9bef685a55936d7544bf645c0d6ecbe) | ||||||
|  | - Switched to html entity [`8a7d635`](https://git.odit.services/lfk/frontend/commit/8a7d635cef2d465e70c84e1f7a7b90b98a8dbab1) | ||||||
|  | - Added runner team's parentorg name to runenr overciew [`4c259c1`](https://git.odit.services/lfk/frontend/commit/4c259c1eef2b0166ce6a8493d0c9e9d5ede11146) | ||||||
|  |  | ||||||
|  | #### [0.12.4](https://git.odit.services/lfk/frontend/compare/0.12.3...0.12.4) | ||||||
|  |  | ||||||
|  | > 8 April 2021 | ||||||
|  |  | ||||||
|  | - 🚀RELEASE v0.12.4 [`5b4ede5`](https://git.odit.services/lfk/frontend/commit/5b4ede5e2f6a26b475a7a4b430a4146d21fb9671) | ||||||
|  | - 🚑 [HOTFIX] - drop "svelte-infinite-loading" [`d0ab3dd`](https://git.odit.services/lfk/frontend/commit/d0ab3dda78bbad2cea18a2491056530897d56607) | ||||||
|  |  | ||||||
| #### [0.12.3](https://git.odit.services/lfk/frontend/compare/0.12.2...0.12.3) | #### [0.12.3](https://git.odit.services/lfk/frontend/compare/0.12.2...0.12.3) | ||||||
|  |  | ||||||
|  | > 8 April 2021 | ||||||
|  |  | ||||||
| - Merge pull request 'fix' (#126) from bugfix/125-mobile into dev [`#125`](https://git.odit.services/lfk/frontend/issues/125) | - Merge pull request 'fix' (#126) from bugfix/125-mobile into dev [`#125`](https://git.odit.services/lfk/frontend/issues/125) | ||||||
| - almost fixed... [`495a6b2`](https://git.odit.services/lfk/frontend/commit/495a6b22bd8036593f390bdb862d325524cefbcc) | - almost fixed... [`495a6b2`](https://git.odit.services/lfk/frontend/commit/495a6b22bd8036593f390bdb862d325524cefbcc) | ||||||
| - 🐞 bugfix for svelte x tailwind class names [`b6b07cf`](https://git.odit.services/lfk/frontend/commit/b6b07cf30cc6533bd5dbfec1f813c16fde85634d) | - 🐞 bugfix for svelte x tailwind class names [`b6b07cf`](https://git.odit.services/lfk/frontend/commit/b6b07cf30cc6533bd5dbfec1f813c16fde85634d) | ||||||
| - fix [`0acaffb`](https://git.odit.services/lfk/frontend/commit/0acaffbdfa359e52654a5afe2788aa59fe6f9036) | - fix [`0acaffb`](https://git.odit.services/lfk/frontend/commit/0acaffbdfa359e52654a5afe2788aa59fe6f9036) | ||||||
|  | - 🚀RELEASE v0.12.3 [`d9cf51b`](https://git.odit.services/lfk/frontend/commit/d9cf51b4bbc2136594a03c5d0eeb8cb3f3440b2a) | ||||||
| - custom css fix for collapsed_navigation [`ffbc243`](https://git.odit.services/lfk/frontend/commit/ffbc243194c7faeb4fe61c12711a1c441c3994ef) | - custom css fix for collapsed_navigation [`ffbc243`](https://git.odit.services/lfk/frontend/commit/ffbc243194c7faeb4fe61c12711a1c441c3994ef) | ||||||
| - new license file version [CI SKIP] [`aa17f24`](https://git.odit.services/lfk/frontend/commit/aa17f242209f7e7cecff774ace7a35b581adec1f) | - new license file version [CI SKIP] [`aa17f24`](https://git.odit.services/lfk/frontend/commit/aa17f242209f7e7cecff774ace7a35b581adec1f) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -13,7 +13,7 @@ | |||||||
| </head> | </head> | ||||||
|  |  | ||||||
| <body> | <body> | ||||||
|   <span style="display: none;visibility: hidden;" id="buildinfo">RELEASE_INFO-0.12.3-RELEASE_INFO</span> |   <span style="display: none;visibility: hidden;" id="buildinfo">RELEASE_INFO-0.14.0-RELEASE_INFO</span> | ||||||
|   <noscript>You need to enable JavaScript to run this app.</noscript> |   <noscript>You need to enable JavaScript to run this app.</noscript> | ||||||
|   <script src="/env.js"></script> |   <script src="/env.js"></script> | ||||||
|   <script type="module" src="/src/main.js"></script> |   <script type="module" src="/src/main.js"></script> | ||||||
|   | |||||||
							
								
								
									
										10
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								package.json
									
									
									
									
									
								
							| @@ -1,6 +1,6 @@ | |||||||
| { | { | ||||||
| 	"name": "@odit/lfk-frontend", | 	"name": "@odit/lfk-frontend", | ||||||
| 	"version": "0.12.3", | 	"version": "0.14.0", | ||||||
| 	"scripts": { | 	"scripts": { | ||||||
| 		"i18n-order": "node order.js", | 		"i18n-order": "node order.js", | ||||||
| 		"dev": "vite", | 		"dev": "vite", | ||||||
| @@ -11,7 +11,7 @@ | |||||||
| 	"license": "CC-BY-NC-SA-4.0", | 	"license": "CC-BY-NC-SA-4.0", | ||||||
| 	"devDependencies": { | 	"devDependencies": { | ||||||
| 		"check-password-strength": "2.0.2", | 		"check-password-strength": "2.0.2", | ||||||
| 		"@odit/lfk-client-js": "0.10.1", | 		"@odit/lfk-client-js": "0.11.0", | ||||||
| 		"@odit/license-exporter": "0.0.11", | 		"@odit/license-exporter": "0.0.11", | ||||||
| 		"@sveltejs/vite-plugin-svelte": "1.0.0-next.6", | 		"@sveltejs/vite-plugin-svelte": "1.0.0-next.6", | ||||||
| 		"@types/html-minifier": "4.0.0", | 		"@types/html-minifier": "4.0.0", | ||||||
| @@ -21,8 +21,8 @@ | |||||||
| 		"gridjs": "3.4.0", | 		"gridjs": "3.4.0", | ||||||
| 		"html-minifier": "4.0.0", | 		"html-minifier": "4.0.0", | ||||||
| 		"localforage": "1.9.0", | 		"localforage": "1.9.0", | ||||||
| 		"marked": "2.0.1", | 		"marked": "2.0.3", | ||||||
| 		"release-it": "14.5.1", | 		"release-it": "14.6.1", | ||||||
| 		"svelte": "3.37.0", | 		"svelte": "3.37.0", | ||||||
| 		"svelte-focus-trap": "1.2.0", | 		"svelte-focus-trap": "1.2.0", | ||||||
| 		"svelte-i18n": "3.3.9", | 		"svelte-i18n": "3.3.9", | ||||||
| @@ -33,7 +33,7 @@ | |||||||
| 		"toastify-js": "1.10.0", | 		"toastify-js": "1.10.0", | ||||||
| 		"validator": "13.5.2", | 		"validator": "13.5.2", | ||||||
| 		"vite": "2.1.5", | 		"vite": "2.1.5", | ||||||
| 		"vite-plugin-windicss": "0.12.5", | 		"vite-plugin-windicss": "0.14.0", | ||||||
| 		"xlsx": "0.16.9" | 		"xlsx": "0.16.9" | ||||||
| 	}, | 	}, | ||||||
| 	"release-it": { | 	"release-it": { | ||||||
|   | |||||||
| @@ -1,5 +1,6 @@ | |||||||
| const config = { | const config = { | ||||||
| 	baseurl: 'http://localhost:4010', | 	baseurl: 'http://localhost:4010', | ||||||
|  | 	baseurl_documentserver: 'http://localhost:4010/documents', | ||||||
| 	documentserver_key: 'NqZSYTy5AFQ7MppbLW5moqpTk7u7YrNUHKYhKYuThnnya2WpCOIU694hIZT1FzYe', | 	documentserver_key: 'NqZSYTy5AFQ7MppbLW5moqpTk7u7YrNUHKYhKYuThnnya2WpCOIU694hIZT1FzYe', | ||||||
| 	// optional | 	// optional | ||||||
| 	default_username: 'demo', | 	default_username: 'demo', | ||||||
|   | |||||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| @@ -77,7 +77,7 @@ | |||||||
|             duration: -1, |             duration: -1, | ||||||
|           }).showToast(); |           }).showToast(); | ||||||
|           fetch( |           fetch( | ||||||
|             `${config.baseurl}/documents/cards?&download=true&key=${config.documentserver_key}`, |             `${config.baseurl_documentserver}/cards?&download=true&key=${config.documentserver_key}`, | ||||||
|             { |             { | ||||||
|               method: "POST", |               method: "POST", | ||||||
|               headers: { |               headers: { | ||||||
|   | |||||||
| @@ -1,6 +1,5 @@ | |||||||
| <script> | <script> | ||||||
|   import { getLocaleFromNavigator, json, _ } from "svelte-i18n"; |   import { _ } from "svelte-i18n"; | ||||||
|   import InfiniteLoading from 'svelte-infinite-loading'; |  | ||||||
|   import { RunnerCardService } from "@odit/lfk-client-js"; |   import { RunnerCardService } from "@odit/lfk-client-js"; | ||||||
|   import store from "../../store"; |   import store from "../../store"; | ||||||
|   import Toastify from "toastify-js"; |   import Toastify from "toastify-js"; | ||||||
|   | |||||||
| @@ -20,6 +20,31 @@ | |||||||
|         {$_('add-donor')} |         {$_('add-donor')} | ||||||
|       </button> |       </button> | ||||||
|     {/if} |     {/if} | ||||||
|  |     {#if store.state.jwtinfo.userdetails.permissions.includes('DONOR:GET')} | ||||||
|  |       <button | ||||||
|  |         on:click={() => { | ||||||
|  |           const data = (current_donors.filter(d=>d.receiptNeeded===true)).map(function (d) { | ||||||
|  |             d.address.address2=d.address.address2===""?"":" "+d.address.address2; | ||||||
|  |             const address=`${d.address.address1}${d.address.address2}, ${d.address.postalcode} ${d.address.city}, ${d.address.country}`; | ||||||
|  |             return [d.firstname,d.middlename,d.lastname,d.paidDonationAmount,address]; | ||||||
|  |           }) | ||||||
|  |           let csv = `${$_('csv_import__firstname')};${$_('csv_import__middlename')};${$_('csv_import__lastname')};${$_('total_donation_amount_in_eur')};${$_('address')}\n`; | ||||||
|  |     data.forEach(function(row) { | ||||||
|  |             csv += row.join(';'); | ||||||
|  |             csv += "\n"; | ||||||
|  |     }); | ||||||
|  |     let hiddenElement = document.createElement('a'); | ||||||
|  |     hiddenElement.href = 'data:text/csv;charset=utf-8,' + encodeURI(csv); | ||||||
|  |     hiddenElement.target = '_blank'; | ||||||
|  |     hiddenElement.download = `${$_('filename_sponsoringquittungsliste')}.csv`; | ||||||
|  |     hiddenElement.click(); | ||||||
|  |     hiddenElement.remove(); | ||||||
|  |         }} | ||||||
|  |         type="button" | ||||||
|  |         class="w-full inline-flex justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-blue-600 text-base font-medium text-white hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500 sm:ml-3 sm:w-auto sm:text-sm"> | ||||||
|  |         {$_('sponsoring-quittungs-liste_herunterladen')} | ||||||
|  |       </button> | ||||||
|  |     {/if} | ||||||
|   </span> |   </span> | ||||||
|   <DonorsOverview bind:current_donors /> |   <DonorsOverview bind:current_donors /> | ||||||
| </section> | </section> | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| <script> | <script> | ||||||
|   import { getLocaleFromNavigator, _ } from "svelte-i18n"; |   import { _ } from "svelte-i18n"; | ||||||
|   import { DonationService, DonorService } from "@odit/lfk-client-js"; |   import { DonationService, DonorService } from "@odit/lfk-client-js"; | ||||||
|   import store from "../../store"; |   import store from "../../store"; | ||||||
|   import DonorsEmptyState from "./DonorsEmptyState.svelte"; |   import DonorsEmptyState from "./DonorsEmptyState.svelte"; | ||||||
|   | |||||||
| @@ -14,7 +14,7 @@ | |||||||
|   $: active_deletes = []; |   $: active_deletes = []; | ||||||
|   $: sponsoring_contracts_show = current_organizations.some((r) => r.is_selected === true); |   $: sponsoring_contracts_show = current_organizations.some((r) => r.is_selected === true); | ||||||
|   $: cards_show = current_organizations.some((r) => r.is_selected === true); |   $: cards_show = current_organizations.some((r) => r.is_selected === true); | ||||||
|   $: generate_orgs = current_organizations.some((r) => r.is_selected === true); |   $: generate_orgs = current_organizations.filter((r) => r.is_selected === true); | ||||||
|   $: certificates_show = current_organizations.some( |   $: certificates_show = current_organizations.some( | ||||||
|     (r) => r.is_selected === true |     (r) => r.is_selected === true | ||||||
|   ); |   ); | ||||||
|   | |||||||
| @@ -41,7 +41,7 @@ | |||||||
|             duration: -1, |             duration: -1, | ||||||
|         }).showToast(); |         }).showToast(); | ||||||
|         fetch( |         fetch( | ||||||
|             `${config.baseurl}/documents/cards?locale=${locale}&download=true&key=${config.documentserver_key}`, |             `${config.baseurl_documentserver}/cards?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|             { |             { | ||||||
|                 method: "POST", |                 method: "POST", | ||||||
|                 headers: { |                 headers: { | ||||||
| @@ -101,7 +101,7 @@ | |||||||
|             cards.push(card); |             cards.push(card); | ||||||
|         } |         } | ||||||
|         fetch( |         fetch( | ||||||
|             `${config.baseurl}/documents/cards?locale=${locale}&download=true&key=${config.documentserver_key}`, |             `${config.baseurl_documentserver}/cards?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|             { |             { | ||||||
|                 method: "POST", |                 method: "POST", | ||||||
|                 headers: { |                 headers: { | ||||||
| @@ -169,7 +169,7 @@ | |||||||
|                 cards.push(card); |                 cards.push(card); | ||||||
|             } |             } | ||||||
|             fetch( |             fetch( | ||||||
|                 `${config.baseurl}/documents/cards?locale=${locale}&download=true&key=${config.documentserver_key}`, |                 `${config.baseurl_documentserver}/cards?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|                 { |                 { | ||||||
|                     method: "POST", |                     method: "POST", | ||||||
|                     headers: { |                     headers: { | ||||||
| @@ -216,15 +216,16 @@ | |||||||
|  |  | ||||||
|     async function generateOrgCards(locale) { |     async function generateOrgCards(locale) { | ||||||
|         const toast = Toastify({ |         const toast = Toastify({ | ||||||
|             text: $_("generating-pdf"), |             text: $_("generating-pdfs"), | ||||||
|             duration: -1, |             duration: -1, | ||||||
|         }).showToast(); |         }).showToast(); | ||||||
|         let count = 0; |  | ||||||
|         const current_cards = await RunnerCardService.runnerCardControllerGetAll(); |         const current_cards = await RunnerCardService.runnerCardControllerGetAll(); | ||||||
|  |         let count = 0; | ||||||
|  |         let count_orgs =0; | ||||||
|         for (const o of generate_orgs) { |         for (const o of generate_orgs) { | ||||||
|             const runners = await RunnerOrganizationService.runnerOrganizationControllerGetRunners( |             count_orgs++; | ||||||
|                 o.id |             let count = 0; | ||||||
|             ); |             let runners = await RunnerOrganizationService.runnerOrganizationControllerGetRunners(o.id, true) | ||||||
|             let cards = []; |             let cards = []; | ||||||
|             for (let runner of runners) { |             for (let runner of runners) { | ||||||
|                 let card = current_cards.find((c) => c.runner?.id == runner.id); |                 let card = current_cards.find((c) => c.runner?.id == runner.id); | ||||||
| @@ -235,8 +236,8 @@ | |||||||
|                 } |                 } | ||||||
|                 cards.push(card); |                 cards.push(card); | ||||||
|             } |             } | ||||||
|             fetch( |             await fetch( | ||||||
|                 `${config.baseurl}/documents/cards?locale=${locale}&download=true&key=${config.documentserver_key}`, |                 `${config.baseurl_documentserver}/cards?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|                 { |                 { | ||||||
|                     method: "POST", |                     method: "POST", | ||||||
|                     headers: { |                     headers: { | ||||||
| @@ -245,39 +246,97 @@ | |||||||
|                     body: JSON.stringify(cards), |                     body: JSON.stringify(cards), | ||||||
|                 } |                 } | ||||||
|             ) |             ) | ||||||
|                 .then((response) => { |             .then((response) => { | ||||||
|                     if (response.status != "200") { |                 if (response.status != "200") { | ||||||
|                         toast.hideToast(); |                     toast.hideToast(); | ||||||
|                         Toastify({ |                     Toastify({ | ||||||
|                             text: $_("pdf-generation-failed"), |                         text: $_("pdf-generation-failed"), | ||||||
|                             duration: 3500, |                         duration: 3500, | ||||||
|                             backgroundColor: |                         backgroundColor: | ||||||
|                                 "linear-gradient(90deg, hsla(281, 37%, 45%, 1) 0%, hsla(1, 62%, 48%, 1) 100%)", |                             "linear-gradient(90deg, hsla(281, 37%, 45%, 1) 0%, hsla(1, 62%, 48%, 1) 100%)", | ||||||
|                         }).showToast(); |                     }).showToast(); | ||||||
|                     } else { |                 } else { | ||||||
|                         return response.blob(); |                     return response.blob(); | ||||||
|                     } |                 } | ||||||
|                 }) |             }) | ||||||
|                 .then((blob) => { |             .then((blob) => { | ||||||
|                     count++; |                 const url = window.URL.createObjectURL(blob); | ||||||
|                     const url = window.URL.createObjectURL(blob); |                 let a = document.createElement("a"); | ||||||
|                     let a = document.createElement("a"); |                 a.href = url; | ||||||
|                     a.href = url; |                 a.download = `${$_('runnercards')}_${o.name}_direct-${locale}.pdf`; | ||||||
|                     a.download = `${$_('runnercards')}_${o.name}-${locale}.pdf`; |                 document.body.appendChild(a); | ||||||
|                     document.body.appendChild(a); |                 a.click(); | ||||||
|                     a.click(); |                 a.remove(); | ||||||
|                     a.remove(); |                 if (count === o.teams.length && count_orgs === generate_orgs.length) { | ||||||
|                     if (count === generate_orgs.length) { |                     toast.hideToast(); | ||||||
|                         toast.hideToast(); |                     console.log("here") | ||||||
|                         Toastify({ |                     Toastify({ | ||||||
|                             text: $_("pdfs-successfully-generated"), |                         text: $_("pdfs-successfully-generated"), | ||||||
|                             duration: 3500, |                         duration: 3500, | ||||||
|                             backgroundColor: |                         backgroundColor: | ||||||
|                                 "linear-gradient(to right, #00b09b, #96c93d)", |                         "linear-gradient(to right, #00b09b, #96c93d)", | ||||||
|                         }).showToast(); |                     }).showToast(); | ||||||
|                     } |                 } | ||||||
|                 }) |             }) | ||||||
|                 .catch((err) => {}); |             .catch((err) => {}); | ||||||
|  |             for (const t of o.teams) { | ||||||
|  |                 count++; | ||||||
|  |                 let runners = await RunnerTeamService.runnerTeamControllerGetRunners( | ||||||
|  |                     t.id | ||||||
|  |                 ); | ||||||
|  |             let cards = []; | ||||||
|  |             for (let runner of runners) { | ||||||
|  |                 let card = current_cards.find((c) => c.runner?.id == runner.id); | ||||||
|  |                 if (!card) { | ||||||
|  |                     card = await RunnerCardService.runnerCardControllerPost({ | ||||||
|  |                         runner: runner.id, | ||||||
|  |                     }); | ||||||
|  |                 } | ||||||
|  |                 cards.push(card); | ||||||
|  |             } | ||||||
|  |             await fetch( | ||||||
|  |                 `${config.baseurl_documentserver}/cards?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|  |                 { | ||||||
|  |                     method: "POST", | ||||||
|  |                     headers: { | ||||||
|  |                         "Content-Type": "application/json", | ||||||
|  |                     }, | ||||||
|  |                     body: JSON.stringify(cards), | ||||||
|  |                 } | ||||||
|  |             ) | ||||||
|  |             .then((response) => { | ||||||
|  |                 if (response.status != "200") { | ||||||
|  |                     toast.hideToast(); | ||||||
|  |                     Toastify({ | ||||||
|  |                         text: $_("pdf-generation-failed"), | ||||||
|  |                         duration: 3500, | ||||||
|  |                         backgroundColor: | ||||||
|  |                             "linear-gradient(90deg, hsla(281, 37%, 45%, 1) 0%, hsla(1, 62%, 48%, 1) 100%)", | ||||||
|  |                     }).showToast(); | ||||||
|  |                 } else { | ||||||
|  |                     return response.blob(); | ||||||
|  |                 } | ||||||
|  |             }) | ||||||
|  |             .then((blob) => { | ||||||
|  |                 const url = window.URL.createObjectURL(blob); | ||||||
|  |                 let a = document.createElement("a"); | ||||||
|  |                 a.href = url; | ||||||
|  |                 a.download = `${$_('runnercards')}_${o.name}_${t.name}-${locale}.pdf`; | ||||||
|  |                 document.body.appendChild(a); | ||||||
|  |                 a.click(); | ||||||
|  |                 a.remove(); | ||||||
|  |                 if (count === o.teams.length && count_orgs === generate_orgs.length) { | ||||||
|  |                     toast.hideToast(); | ||||||
|  |                     Toastify({ | ||||||
|  |                         text: $_("pdfs-successfully-generated"), | ||||||
|  |                         duration: 3500, | ||||||
|  |                         backgroundColor: | ||||||
|  |                             "linear-gradient(to right, #00b09b, #96c93d)", | ||||||
|  |                     }).showToast(); | ||||||
|  |                 } | ||||||
|  |             }) | ||||||
|  |             .catch((err) => {}); | ||||||
|  |             } | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
| </script> | </script> | ||||||
|   | |||||||
| @@ -37,14 +37,14 @@ | |||||||
|             text: $_("generating-pdf"), |             text: $_("generating-pdf"), | ||||||
|             duration: -1, |             duration: -1, | ||||||
|         }).showToast(); |         }).showToast(); | ||||||
|         const current_donations = await DonationService.donationControllerGetAll(); |         const current_donations = (await DonationService.donationControllerGetAll()) || []; | ||||||
|         let certificateRunners = []; |         let certificateRunners = []; | ||||||
|         for (let runner of generate_runners) { |         for (let runner of generate_runners) { | ||||||
|             runner.distanceDonations = current_donations.find((d) => d.runner?.id == runner.id) || []; |             runner.distanceDonations = current_donations.find((d) => d.runner?.id == runner.id) || []; | ||||||
|             certificateRunners.push(runner); |             certificateRunners.push(runner); | ||||||
|         } |         } | ||||||
|         fetch( |         fetch( | ||||||
|             `${config.baseurl}/documents/certificates?locale=${locale}&download=true&key=${config.documentserver_key}`, |             `${config.baseurl_documentserver}/certificates?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|             { |             { | ||||||
|                 method: "POST", |                 method: "POST", | ||||||
|                 headers: { |                 headers: { | ||||||
| @@ -96,7 +96,7 @@ | |||||||
|             duration: -1, |             duration: -1, | ||||||
|         }).showToast(); |         }).showToast(); | ||||||
|         let count = 0; |         let count = 0; | ||||||
|         const current_donations = await DonationService.donationControllerGetAll(); |         const current_donations = (await DonationService.donationControllerGetAll()) || []; | ||||||
|         for (const t of generate_teams) { |         for (const t of generate_teams) { | ||||||
|             const runners = await RunnerTeamService.runnerTeamControllerGetRunners( |             const runners = await RunnerTeamService.runnerTeamControllerGetRunners( | ||||||
|                 t.id |                 t.id | ||||||
| @@ -107,7 +107,7 @@ | |||||||
|                 certificateRunners.push(runner); |                 certificateRunners.push(runner); | ||||||
|             } |             } | ||||||
|             fetch( |             fetch( | ||||||
|                 `${config.baseurl}/documents/certificates?locale=${locale}&download=true&key=${config.documentserver_key}`, |                 `${config.baseurl_documentserver}/certificates?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|                 { |                 { | ||||||
|                     method: "POST", |                     method: "POST", | ||||||
|                     headers: { |                     headers: { | ||||||
| @@ -154,22 +154,23 @@ | |||||||
|  |  | ||||||
|     async function generateOrgCertificates(locale) { |     async function generateOrgCertificates(locale) { | ||||||
|         const toast = Toastify({ |         const toast = Toastify({ | ||||||
|             text: $_("generating-pdf"), |             text: $_("generating-pdfs"), | ||||||
|             duration: -1, |             duration: -1, | ||||||
|         }).showToast(); |         }).showToast(); | ||||||
|  |         const current_donations = (await DonationService.donationControllerGetAll()) || []; | ||||||
|         let count = 0; |         let count = 0; | ||||||
|         const current_donations = await DonationService.donationControllerGetAll(); |         let count_orgs =0; | ||||||
|         for (const o of generate_orgs) { |         for (const o of generate_orgs) { | ||||||
|             const runners = await RunnerOrganizationService.runnerOrganizationControllerGetRunners( |             count_orgs++; | ||||||
|                 o.id |             let count = 0; | ||||||
|             ); |             let runners = await RunnerOrganizationService.runnerOrganizationControllerGetRunners(o.id, true) | ||||||
|             let certificateRunners = []; |             let certificateRunners = []; | ||||||
|             for (let runner of runners) { |             for (let runner of runners) { | ||||||
|                 runner.distanceDonations = current_donations.find((d) => d.runner?.id == runner.id) || []; |                 runner.distanceDonations = current_donations.find((d) => d.runner?.id == runner.id) || []; | ||||||
|                 certificateRunners.push(runner); |                 certificateRunners.push(runner); | ||||||
|             } |             } | ||||||
|             fetch( |             await fetch( | ||||||
|                 `${config.baseurl}/documents/certificates?locale=${locale}&download=true&key=${config.documentserver_key}`, |                 `${config.baseurl_documentserver}/certificates?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|                 { |                 { | ||||||
|                     method: "POST", |                     method: "POST", | ||||||
|                     headers: { |                     headers: { | ||||||
| @@ -178,39 +179,92 @@ | |||||||
|                     body: JSON.stringify(certificateRunners), |                     body: JSON.stringify(certificateRunners), | ||||||
|                 } |                 } | ||||||
|             ) |             ) | ||||||
|                 .then((response) => { |             .then((response) => { | ||||||
|                     if (response.status != "200") { |                 if (response.status != "200") { | ||||||
|                         toast.hideToast(); |                     toast.hideToast(); | ||||||
|                         Toastify({ |                     Toastify({ | ||||||
|                             text: $_("pdf-generation-failed"), |                         text: $_("pdf-generation-failed"), | ||||||
|                             duration: 3500, |                         duration: 3500, | ||||||
|                             backgroundColor: |                         backgroundColor: | ||||||
|                                 "linear-gradient(90deg, hsla(281, 37%, 45%, 1) 0%, hsla(1, 62%, 48%, 1) 100%)", |                             "linear-gradient(90deg, hsla(281, 37%, 45%, 1) 0%, hsla(1, 62%, 48%, 1) 100%)", | ||||||
|                         }).showToast(); |                     }).showToast(); | ||||||
|                     } else { |                 } else { | ||||||
|                         return response.blob(); |                     return response.blob(); | ||||||
|                     } |                 } | ||||||
|                 }) |             }) | ||||||
|                 .then((blob) => { |             .then((blob) => { | ||||||
|                     count++; |                 const url = window.URL.createObjectURL(blob); | ||||||
|                     const url = window.URL.createObjectURL(blob); |                 let a = document.createElement("a"); | ||||||
|                     let a = document.createElement("a"); |                 a.href = url; | ||||||
|                     a.href = url; |                 a.download = `${$_('certificates')}_${o.name}_direct-${locale}.pdf`; | ||||||
|                     a.download = `${$_('certificates')}_${o.name}-${locale}.pdf`; |                 document.body.appendChild(a); | ||||||
|                     document.body.appendChild(a); |                 a.click(); | ||||||
|                     a.click(); |                 a.remove(); | ||||||
|                     a.remove(); |                 if (count === o.teams.length && count_orgs === generate_orgs.length) { | ||||||
|                     if (count === generate_orgs.length) { |                     toast.hideToast(); | ||||||
|                         toast.hideToast(); |                     console.log("here") | ||||||
|                         Toastify({ |                     Toastify({ | ||||||
|                             text: $_("pdfs-successfully-generated"), |                         text: $_("pdfs-successfully-generated"), | ||||||
|                             duration: 3500, |                         duration: 3500, | ||||||
|                             backgroundColor: |                         backgroundColor: | ||||||
|                                 "linear-gradient(to right, #00b09b, #96c93d)", |                         "linear-gradient(to right, #00b09b, #96c93d)", | ||||||
|                         }).showToast(); |                     }).showToast(); | ||||||
|                     } |                 } | ||||||
|                 }) |             }) | ||||||
|                 .catch((err) => {}); |             .catch((err) => {}); | ||||||
|  |             for (const t of o.teams) { | ||||||
|  |                 count++; | ||||||
|  |                 let runners = await RunnerTeamService.runnerTeamControllerGetRunners( | ||||||
|  |                     t.id | ||||||
|  |                 ); | ||||||
|  |                 let certificateRunners = []; | ||||||
|  |             for (let runner of runners) { | ||||||
|  |                 runner.distanceDonations = current_donations.find((d) => d.runner?.id == runner.id) || []; | ||||||
|  |                 certificateRunners.push(runner); | ||||||
|  |             } | ||||||
|  |             await fetch( | ||||||
|  |                 `${config.baseurl_documentserver}/certificates?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|  |                 { | ||||||
|  |                     method: "POST", | ||||||
|  |                     headers: { | ||||||
|  |                         "Content-Type": "application/json", | ||||||
|  |                     }, | ||||||
|  |                     body: JSON.stringify(certificateRunners), | ||||||
|  |                 } | ||||||
|  |             ) | ||||||
|  |             .then((response) => { | ||||||
|  |                 if (response.status != "200") { | ||||||
|  |                     toast.hideToast(); | ||||||
|  |                     Toastify({ | ||||||
|  |                         text: $_("pdf-generation-failed"), | ||||||
|  |                         duration: 3500, | ||||||
|  |                         backgroundColor: | ||||||
|  |                             "linear-gradient(90deg, hsla(281, 37%, 45%, 1) 0%, hsla(1, 62%, 48%, 1) 100%)", | ||||||
|  |                     }).showToast(); | ||||||
|  |                 } else { | ||||||
|  |                     return response.blob(); | ||||||
|  |                 } | ||||||
|  |             }) | ||||||
|  |             .then((blob) => { | ||||||
|  |                 const url = window.URL.createObjectURL(blob); | ||||||
|  |                 let a = document.createElement("a"); | ||||||
|  |                 a.href = url; | ||||||
|  |                 a.download = `${$_('certificates')}_${o.name}_${t.name}-${locale}.pdf`; | ||||||
|  |                 document.body.appendChild(a); | ||||||
|  |                 a.click(); | ||||||
|  |                 a.remove(); | ||||||
|  |                 if (count === o.teams.length && count_orgs === generate_orgs.length) { | ||||||
|  |                     toast.hideToast(); | ||||||
|  |                     Toastify({ | ||||||
|  |                         text: $_("pdfs-successfully-generated"), | ||||||
|  |                         duration: 3500, | ||||||
|  |                         backgroundColor: | ||||||
|  |                             "linear-gradient(to right, #00b09b, #96c93d)", | ||||||
|  |                     }).showToast(); | ||||||
|  |                 } | ||||||
|  |             }) | ||||||
|  |             .catch((err) => {}); | ||||||
|  |             } | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
| </script> | </script> | ||||||
|   | |||||||
| @@ -43,7 +43,7 @@ | |||||||
|                 t.id |                 t.id | ||||||
|             ); |             ); | ||||||
|             fetch( |             fetch( | ||||||
|                 `${config.baseurl}/documents/contracts?locale=${locale}&download=true&key=${config.documentserver_key}`, |                 `${config.baseurl_documentserver}/contracts?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|                 { |                 { | ||||||
|                     method: "POST", |                     method: "POST", | ||||||
|                     headers: { |                     headers: { | ||||||
| @@ -92,12 +92,13 @@ | |||||||
|             text: $_("generating-pdf"), |             text: $_("generating-pdf"), | ||||||
|             duration: -1, |             duration: -1, | ||||||
|         }).showToast(); |         }).showToast(); | ||||||
|  |         let count_orgs =0; | ||||||
|         for (const o of generate_orgs) { |         for (const o of generate_orgs) { | ||||||
|             const runners = await RunnerOrganizationService.runnerOrganizationControllerGetRunners( |             count_orgs++; | ||||||
|                 o.id |             let count = 0; | ||||||
|             ); |             let runners = await RunnerOrganizationService.runnerOrganizationControllerGetRunners(o.id, true) | ||||||
|             fetch( |             await fetch( | ||||||
|                 `${config.baseurl}/documents/contracts?locale=${locale}&download=true&key=${config.documentserver_key}`, |                 `${config.baseurl_documentserver}/contracts?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|                 { |                 { | ||||||
|                     method: "POST", |                     method: "POST", | ||||||
|                     headers: { |                     headers: { | ||||||
| @@ -106,39 +107,87 @@ | |||||||
|                     body: JSON.stringify(runners), |                     body: JSON.stringify(runners), | ||||||
|                 } |                 } | ||||||
|             ) |             ) | ||||||
|                 .then((response) => { |             .then((response) => { | ||||||
|                     if (response.status != "200") { |                 if (response.status != "200") { | ||||||
|                         toast.hideToast(); |                     toast.hideToast(); | ||||||
|                         Toastify({ |                     Toastify({ | ||||||
|                             text: $_("pdf-generation-failed"), |                         text: $_("pdf-generation-failed"), | ||||||
|                             duration: 3500, |                         duration: 3500, | ||||||
|                             backgroundColor: |                         backgroundColor: | ||||||
|                                 "linear-gradient(90deg, hsla(281, 37%, 45%, 1) 0%, hsla(1, 62%, 48%, 1) 100%)", |                             "linear-gradient(90deg, hsla(281, 37%, 45%, 1) 0%, hsla(1, 62%, 48%, 1) 100%)", | ||||||
|                         }).showToast(); |                     }).showToast(); | ||||||
|                     } else { |                 } else { | ||||||
|                         return response.blob(); |                     return response.blob(); | ||||||
|                     } |                 } | ||||||
|                 }) |             }) | ||||||
|                 .then((blob) => { |             .then((blob) => { | ||||||
|                     count++; |                 const url = window.URL.createObjectURL(blob); | ||||||
|                     const url = window.URL.createObjectURL(blob); |                 let a = document.createElement("a"); | ||||||
|                     let a = document.createElement("a"); |                 a.href = url; | ||||||
|                     a.href = url; |                 a.download = `${$_('sponsorings')}_${o.name}_direct-${locale}.pdf`; | ||||||
|                     a.download = `${$_('sponsorings')}_${o.name}-${locale}.pdf`; |                 document.body.appendChild(a); | ||||||
|                     document.body.appendChild(a); |                 a.click(); | ||||||
|                     a.click(); |                 a.remove(); | ||||||
|                     a.remove(); |                 if (count === o.teams.length && count_orgs === generate_orgs.length) { | ||||||
|                     if (count === generate_orgs.length) { |                     toast.hideToast(); | ||||||
|                         toast.hideToast(); |                     console.log("here") | ||||||
|                         Toastify({ |                     Toastify({ | ||||||
|                             text: $_("pdfs-successfully-generated"), |                         text: $_("pdfs-successfully-generated"), | ||||||
|                             duration: 3500, |                         duration: 3500, | ||||||
|                             backgroundColor: |                         backgroundColor: | ||||||
|                                 "linear-gradient(to right, #00b09b, #96c93d)", |                         "linear-gradient(to right, #00b09b, #96c93d)", | ||||||
|                         }).showToast(); |                     }).showToast(); | ||||||
|                     } |                 } | ||||||
|                 }) |             }) | ||||||
|                 .catch((err) => {}); |             .catch((err) => {}); | ||||||
|  |             for (const t of o.teams) { | ||||||
|  |                 count++; | ||||||
|  |                 let runners = await RunnerTeamService.runnerTeamControllerGetRunners( | ||||||
|  |                     t.id | ||||||
|  |                 ); | ||||||
|  |             await fetch( | ||||||
|  |                 `${config.baseurl_documentserver}/contracts?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|  |                 { | ||||||
|  |                     method: "POST", | ||||||
|  |                     headers: { | ||||||
|  |                         "Content-Type": "application/json", | ||||||
|  |                     }, | ||||||
|  |                     body: JSON.stringify(runners), | ||||||
|  |                 } | ||||||
|  |             ) | ||||||
|  |             .then((response) => { | ||||||
|  |                 if (response.status != "200") { | ||||||
|  |                     toast.hideToast(); | ||||||
|  |                     Toastify({ | ||||||
|  |                         text: $_("pdf-generation-failed"), | ||||||
|  |                         duration: 3500, | ||||||
|  |                         backgroundColor: | ||||||
|  |                             "linear-gradient(90deg, hsla(281, 37%, 45%, 1) 0%, hsla(1, 62%, 48%, 1) 100%)", | ||||||
|  |                     }).showToast(); | ||||||
|  |                 } else { | ||||||
|  |                     return response.blob(); | ||||||
|  |                 } | ||||||
|  |             }) | ||||||
|  |             .then((blob) => { | ||||||
|  |                 const url = window.URL.createObjectURL(blob); | ||||||
|  |                 let a = document.createElement("a"); | ||||||
|  |                 a.href = url; | ||||||
|  |                 a.download = `${$_('sponsorings')}_${o.name}_${t.name}-${locale}.pdf`; | ||||||
|  |                 document.body.appendChild(a); | ||||||
|  |                 a.click(); | ||||||
|  |                 a.remove(); | ||||||
|  |                 if (count === o.teams.length && count_orgs === generate_orgs.length) { | ||||||
|  |                     toast.hideToast(); | ||||||
|  |                     Toastify({ | ||||||
|  |                         text: $_("pdfs-successfully-generated"), | ||||||
|  |                         duration: 3500, | ||||||
|  |                         backgroundColor: | ||||||
|  |                             "linear-gradient(to right, #00b09b, #96c93d)", | ||||||
|  |                     }).showToast(); | ||||||
|  |                 } | ||||||
|  |             }) | ||||||
|  |             .catch((err) => {}); | ||||||
|  |             } | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|  |  | ||||||
| @@ -148,7 +197,7 @@ | |||||||
|             duration: -1, |             duration: -1, | ||||||
|         }).showToast(); |         }).showToast(); | ||||||
|         fetch( |         fetch( | ||||||
|             `${config.baseurl}/documents/contracts?locale=${locale}&download=true&key=${config.documentserver_key}`, |             `${config.baseurl_documentserver}/contracts?locale=${locale}&download=true&key=${config.documentserver_key}`, | ||||||
|             { |             { | ||||||
|                 method: "POST", |                 method: "POST", | ||||||
|                 headers: { |                 headers: { | ||||||
|   | |||||||
| @@ -197,7 +197,7 @@ | |||||||
|                       {#if runner.group.responseType === 'RUNNERTEAM'} |                       {#if runner.group.responseType === 'RUNNERTEAM'} | ||||||
|                         <a |                         <a | ||||||
|                           href="../teams/{runner.group.id}" |                           href="../teams/{runner.group.id}" | ||||||
|                           class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-gray-100 text-gray-800">{runner.group.name}</a> |                           class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-gray-100 text-gray-800">{runner.group.parentGroup.name} > {runner.group.name}</a> | ||||||
|                       {/if} |                       {/if} | ||||||
|                       {#if runner.group.responseType === 'RUNNERORGANIZATION'} |                       {#if runner.group.responseType === 'RUNNERORGANIZATION'} | ||||||
|                         <a |                         <a | ||||||
|   | |||||||
| @@ -183,6 +183,7 @@ | |||||||
|     "everything-concerning-your-profile": "Alles zu deinem Profil", |     "everything-concerning-your-profile": "Alles zu deinem Profil", | ||||||
|     "everything-is-more-fun-together": "Im Team macht's mehr Spaß 🏃♂️🏃♀️🏃♂️", |     "everything-is-more-fun-together": "Im Team macht's mehr Spaß 🏃♂️🏃♀️🏃♂️", | ||||||
|     "faq": "FAQ", |     "faq": "FAQ", | ||||||
|  |     "filename_sponsoringquittungsliste": "SponsoringQuittungsListe", | ||||||
|     "filter-by-organization-team": "Filtern nach Organisation / Team", |     "filter-by-organization-team": "Filtern nach Organisation / Team", | ||||||
|     "first-name": "Vorname", |     "first-name": "Vorname", | ||||||
|     "first-name-is-required": "Vorname muss angegeben werden", |     "first-name-is-required": "Vorname muss angegeben werden", | ||||||
| @@ -354,6 +355,7 @@ | |||||||
|     "settings": "Einstellungen", |     "settings": "Einstellungen", | ||||||
|     "settings-for-your-profile": "Die Einstellungen deines Accounts", |     "settings-for-your-profile": "Die Einstellungen deines Accounts", | ||||||
|     "something-about-the-group": "Infos zur Gruppe", |     "something-about-the-group": "Infos zur Gruppe", | ||||||
|  |     "sponsoring-quittungs-liste_herunterladen": "Sponsoring-Quittungs-Liste herunterladen", | ||||||
|     "sponsorings": "Sponsoringerklaerungen", |     "sponsorings": "Sponsoringerklaerungen", | ||||||
|     "stats-are-being-loaded": "Die Statistiken werden geladen...", |     "stats-are-being-loaded": "Die Statistiken werden geladen...", | ||||||
|     "status": "Status", |     "status": "Status", | ||||||
| @@ -386,6 +388,7 @@ | |||||||
|     "total-donation-amount": "Gesamtbetrag", |     "total-donation-amount": "Gesamtbetrag", | ||||||
|     "total-donations": "Spendensumme", |     "total-donations": "Spendensumme", | ||||||
|     "total-scans": "gesamte Scans", |     "total-scans": "gesamte Scans", | ||||||
|  |     "total_donation_amount_in_eur": "Gesamtbetrag in €", | ||||||
|     "track": "Track", |     "track": "Track", | ||||||
|     "track-added": "Track hinzugefügt", |     "track-added": "Track hinzugefügt", | ||||||
|     "track-data-is-being-loaded": "Trackdaten werden geladen", |     "track-data-is-being-loaded": "Trackdaten werden geladen", | ||||||
| @@ -395,6 +398,7 @@ | |||||||
|     "track-name": "Trackname", |     "track-name": "Trackname", | ||||||
|     "track-name-must-not-be-empty": "Der Name muss angegeben werden", |     "track-name-must-not-be-empty": "Der Name muss angegeben werden", | ||||||
|     "tracks": "Tracks", |     "tracks": "Tracks", | ||||||
|  |     "update-card": "Karte aktualisieren", | ||||||
|     "update-password": "Passwort ändern", |     "update-password": "Passwort ändern", | ||||||
|     "updated-contact": "Kontakt aktualisiert!", |     "updated-contact": "Kontakt aktualisiert!", | ||||||
|     "updated-donor": "Sponsor:in wurde aktualisiert", |     "updated-donor": "Sponsor:in wurde aktualisiert", | ||||||
|   | |||||||
| @@ -6,7 +6,7 @@ | |||||||
|     "active": "Active", |     "active": "Active", | ||||||
|     "add-card": "Add Card", |     "add-card": "Add Card", | ||||||
|     "add-donation": "Add donation", |     "add-donation": "Add donation", | ||||||
|     "add-donor": "add donor", |     "add-donor": "Add donor", | ||||||
|     "add-scan": "Add scan", |     "add-scan": "Add scan", | ||||||
|     "add-the-first-scanstation": "Add your first scanstation.", |     "add-the-first-scanstation": "Add your first scanstation.", | ||||||
|     "add-user-group": "Add User Group", |     "add-user-group": "Add User Group", | ||||||
| @@ -183,6 +183,7 @@ | |||||||
|     "everything-concerning-your-profile": "Everything concerning your profile", |     "everything-concerning-your-profile": "Everything concerning your profile", | ||||||
|     "everything-is-more-fun-together": "everything is more fun together 🏃♂️🏃♀️🏃♂️", |     "everything-is-more-fun-together": "everything is more fun together 🏃♂️🏃♀️🏃♂️", | ||||||
|     "faq": "FAQ", |     "faq": "FAQ", | ||||||
|  |     "filename_sponsoringquittungsliste": "DonorReceiptList", | ||||||
|     "filter-by-organization-team": "Filter by Organization/ Team", |     "filter-by-organization-team": "Filter by Organization/ Team", | ||||||
|     "first-name": "First name", |     "first-name": "First name", | ||||||
|     "first-name-is-required": "First Name is required", |     "first-name-is-required": "First Name is required", | ||||||
| @@ -354,6 +355,7 @@ | |||||||
|     "settings": "Settings", |     "settings": "Settings", | ||||||
|     "settings-for-your-profile": "Settings for your profile", |     "settings-for-your-profile": "Settings for your profile", | ||||||
|     "something-about-the-group": "Something about the group...", |     "something-about-the-group": "Something about the group...", | ||||||
|  |     "sponsoring-quittungs-liste_herunterladen": "Download donor receipt list", | ||||||
|     "sponsorings": "Sponsorings", |     "sponsorings": "Sponsorings", | ||||||
|     "stats-are-being-loaded": "stats are being loaded...", |     "stats-are-being-loaded": "stats are being loaded...", | ||||||
|     "status": "Status", |     "status": "Status", | ||||||
| @@ -386,6 +388,7 @@ | |||||||
|     "total-donation-amount": "total donation amount", |     "total-donation-amount": "total donation amount", | ||||||
|     "total-donations": "total donations", |     "total-donations": "total donations", | ||||||
|     "total-scans": "total scans", |     "total-scans": "total scans", | ||||||
|  |     "total_donation_amount_in_eur": "Total donation amount in €", | ||||||
|     "track": "Track", |     "track": "Track", | ||||||
|     "track-added": "Track added", |     "track-added": "Track added", | ||||||
|     "track-data-is-being-loaded": "Track data is being loaded", |     "track-data-is-being-loaded": "Track data is being loaded", | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user