Compare commits
	
		
			12 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						
						
							
						
						950217e0a3
	
				 | 
					
					
						|||
| 
						
						
							
						
						5e65fb3301
	
				 | 
					
					
						|||
| 
						
						
							
						
						2a294cde04
	
				 | 
					
					
						|||
| 
						
						
							
						
						e95420d79c
	
				 | 
					
					
						|||
| 
						
						
							
						
						cffbd17dc7
	
				 | 
					
					
						|||
| 
						
						
							
						
						00de8c3d75
	
				 | 
					
					
						|||
| 
						
						
							
						
						1f4711d07a
	
				 | 
					
					
						|||
| 
						
						
							
						
						30e3396897
	
				 | 
					
					
						|||
| 
						
						
							
						
						5291e049a1
	
				 | 
					
					
						|||
| 
						
						
							
						
						08fbb504c9
	
				 | 
					
					
						|||
| 
						
						
							
						
						e9ca1d3e5d
	
				 | 
					
					
						|||
| 
						
						
							
						
						9fe53b0b9c
	
				 | 
					
					
						
							
								
								
									
										25
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										25
									
								
								CHANGELOG.md
									
									
									
									
									
								
							@@ -2,10 +2,35 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
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.18.3](https://git.odit.services/lfk/frontend/compare/0.18.2...0.18.3)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Dont show adress 2 in runner overview [`5e65fb3`](https://git.odit.services/lfk/frontend/commit/5e65fb33013c3dad38e7ad6740b017ae206f278f)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#### [0.18.2](https://git.odit.services/lfk/frontend/compare/0.18.1...0.18.2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					> 15 April 2023
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- 🚀RELEASE v0.18.2 [`2a294cd`](https://git.odit.services/lfk/frontend/commit/2a294cde040044bbebfb9c8b34b6c91b27772741)
 | 
				
			||||||
 | 
					- Added timestamps to scanoverview [`cffbd17`](https://git.odit.services/lfk/frontend/commit/cffbd17dc77054048cc9b14891f960f9a3fd18cb)
 | 
				
			||||||
 | 
					- Push in releaseit [`e95420d`](https://git.odit.services/lfk/frontend/commit/e95420d79c3227c0ca0cf0c0b599970c2b7d690e)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#### [0.18.1](https://git.odit.services/lfk/frontend/compare/0.18.0...0.18.1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					> 15 April 2023
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- 🚀RELEASE v0.18.1 [`00de8c3`](https://git.odit.services/lfk/frontend/commit/00de8c3d75e90cd4614f42111f5f45bedde64130)
 | 
				
			||||||
 | 
					- Missing scanstation translations [`30e3396`](https://git.odit.services/lfk/frontend/commit/30e33968978bf33cedb31bcbf63fac273e1664f5)
 | 
				
			||||||
 | 
					- fix: button onclick a11y [`9fe53b0`](https://git.odit.services/lfk/frontend/commit/9fe53b0b9c71e8a6b4aa3f317327ffe729df0834)
 | 
				
			||||||
 | 
					- fix(ConfirmStatsClientDeletion): ScanStationService -> StatsClientService [`5291e04`](https://git.odit.services/lfk/frontend/commit/5291e049a1d2e880fbe277095da91b70d4812c3f)
 | 
				
			||||||
 | 
					- fix(ConfirmScanStationDeletion): donorControllerRemove -> scanStationControllerRemove [`08fbb50`](https://git.odit.services/lfk/frontend/commit/08fbb504c958415ce75e1e426296f870f0f1358d)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#### [0.18.0](https://git.odit.services/lfk/frontend/compare/0.17.3...0.18.0)
 | 
					#### [0.18.0](https://git.odit.services/lfk/frontend/compare/0.17.3...0.18.0)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					> 12 April 2023
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- Moved filter function to typed version [`#171`](https://git.odit.services/lfk/frontend/issues/171)
 | 
					- Moved filter function to typed version [`#171`](https://git.odit.services/lfk/frontend/issues/171)
 | 
				
			||||||
- ScansOverview: migrate to datatable [`#168`](https://git.odit.services/lfk/frontend/issues/168)
 | 
					- ScansOverview: migrate to datatable [`#168`](https://git.odit.services/lfk/frontend/issues/168)
 | 
				
			||||||
 | 
					- 🚀RELEASE v0.18.0 [`eb80406`](https://git.odit.services/lfk/frontend/commit/eb80406fdb8abf3f76bca742095e8f1f03480a56)
 | 
				
			||||||
- wip: ScansOverview -> new datatable [`c87561f`](https://git.odit.services/lfk/frontend/commit/c87561f63b90ab951daf91d9b8b54ba96a94cc7f)
 | 
					- wip: ScansOverview -> new datatable [`c87561f`](https://git.odit.services/lfk/frontend/commit/c87561f63b90ab951daf91d9b8b54ba96a94cc7f)
 | 
				
			||||||
- Basic card table replace [`5662c3b`](https://git.odit.services/lfk/frontend/commit/5662c3b6da67c00c94254bf39f8820e531fc93ef)
 | 
					- Basic card table replace [`5662c3b`](https://git.odit.services/lfk/frontend/commit/5662c3b6da67c00c94254bf39f8820e531fc93ef)
 | 
				
			||||||
- RunnersOverview: table responsiveness [`bf1e715`](https://git.odit.services/lfk/frontend/commit/bf1e715261c0076fd8543dd1187c516209a73b16)
 | 
					- RunnersOverview: table responsiveness [`bf1e715`](https://git.odit.services/lfk/frontend/commit/bf1e715261c0076fd8543dd1187c516209a73b16)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -13,7 +13,7 @@
 | 
				
			|||||||
</head>
 | 
					</head>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<body>
 | 
					<body>
 | 
				
			||||||
  <span style="display: none;visibility: hidden;" id="buildinfo">RELEASE_INFO-0.18.0-RELEASE_INFO</span>
 | 
					  <span style="display: none;visibility: hidden;" id="buildinfo">RELEASE_INFO-0.18.3-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>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
	"name": "@odit/lfk-frontend",
 | 
						"name": "@odit/lfk-frontend",
 | 
				
			||||||
	"version": "0.18.0",
 | 
						"version": "0.18.3",
 | 
				
			||||||
	"type": "module",
 | 
						"type": "module",
 | 
				
			||||||
	"scripts": {
 | 
						"scripts": {
 | 
				
			||||||
		"i18n-order": "node order.js",
 | 
							"i18n-order": "node order.js",
 | 
				
			||||||
@@ -26,7 +26,7 @@
 | 
				
			|||||||
			"commit": true,
 | 
								"commit": true,
 | 
				
			||||||
			"requireCleanWorkingDir": false,
 | 
								"requireCleanWorkingDir": false,
 | 
				
			||||||
			"commitMessage": "🚀RELEASE v${version}",
 | 
								"commitMessage": "🚀RELEASE v${version}",
 | 
				
			||||||
			"push": false,
 | 
								"push": true,
 | 
				
			||||||
			"tag": true,
 | 
								"tag": true,
 | 
				
			||||||
			"tagName": null,
 | 
								"tagName": null,
 | 
				
			||||||
			"tagAnnotation": "v${version}"
 | 
								"tagAnnotation": "v${version}"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -119,7 +119,7 @@
 | 
				
			|||||||
                    {/if}
 | 
					                    {/if}
 | 
				
			||||||
                    {#if donor.address.address1 !== null}
 | 
					                    {#if donor.address.address1 !== null}
 | 
				
			||||||
                      {donor.address.address1}<br />
 | 
					                      {donor.address.address1}<br />
 | 
				
			||||||
                      {donor.address.address2 || ''}<br />
 | 
					                      <!-- {donor.address.address2 || ''}<br /> -->
 | 
				
			||||||
                      {donor.address.postalcode}
 | 
					                      {donor.address.postalcode}
 | 
				
			||||||
                      {donor.address.city}
 | 
					                      {donor.address.city}
 | 
				
			||||||
                      {donor.address.country}
 | 
					                      {donor.address.country}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -119,9 +119,9 @@
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  async function copy() {
 | 
					  async function copy() {
 | 
				
			||||||
    if(!editable.registrationKey){
 | 
					    if (!editable.registrationKey) {
 | 
				
			||||||
      Toastify({
 | 
					      Toastify({
 | 
				
			||||||
        text: $_('you-have-to-save-your-changes-to-generate-a-link'),
 | 
					        text: $_("you-have-to-save-your-changes-to-generate-a-link"),
 | 
				
			||||||
        duration: 500,
 | 
					        duration: 500,
 | 
				
			||||||
        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%)",
 | 
				
			||||||
@@ -167,7 +167,8 @@
 | 
				
			|||||||
  passed_orgs={[]}
 | 
					  passed_orgs={[]}
 | 
				
			||||||
  passed_org={editable}
 | 
					  passed_org={editable}
 | 
				
			||||||
  opened_from="OrgDetail"
 | 
					  opened_from="OrgDetail"
 | 
				
			||||||
  bind:import_modal_open />
 | 
					  bind:import_modal_open
 | 
				
			||||||
 | 
					/>
 | 
				
			||||||
<ConfirmOrgDeletion bind:modal_open bind:delete_org />
 | 
					<ConfirmOrgDeletion bind:modal_open bind:delete_org />
 | 
				
			||||||
{#if data_loaded}
 | 
					{#if data_loaded}
 | 
				
			||||||
  <section class="container p-5">
 | 
					  <section class="container p-5">
 | 
				
			||||||
@@ -176,29 +177,35 @@
 | 
				
			|||||||
      <span data-id="org_actions_${editable.id}">
 | 
					      <span data-id="org_actions_${editable.id}">
 | 
				
			||||||
        <GenerateSponsoringContracts
 | 
					        <GenerateSponsoringContracts
 | 
				
			||||||
          bind:sponsoring_contracts_show
 | 
					          bind:sponsoring_contracts_show
 | 
				
			||||||
          bind:generate_orgs />
 | 
					          bind:generate_orgs
 | 
				
			||||||
 | 
					        />
 | 
				
			||||||
        <GenerateRunnerCards bind:cards_show bind:generate_orgs />
 | 
					        <GenerateRunnerCards bind:cards_show bind:generate_orgs />
 | 
				
			||||||
        <GenerateRunnerCertificates bind:certificates_show bind:generate_orgs />
 | 
					        <GenerateRunnerCertificates bind:certificates_show bind:generate_orgs />
 | 
				
			||||||
        {#if store.state.jwtinfo.userdetails.permissions.includes('RUNNER:IMPORT')}
 | 
					        {#if store.state.jwtinfo.userdetails.permissions.includes("RUNNER:IMPORT")}
 | 
				
			||||||
          <button
 | 
					          <button
 | 
				
			||||||
            on:click={() => {
 | 
					            on:click={() => {
 | 
				
			||||||
              import_modal_open = true;
 | 
					              import_modal_open = true;
 | 
				
			||||||
            }}
 | 
					            }}
 | 
				
			||||||
            type="button"
 | 
					            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">
 | 
					            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"
 | 
				
			||||||
            {$_('import-runners')}
 | 
					          >
 | 
				
			||||||
 | 
					            {$_("import-runners")}
 | 
				
			||||||
          </button>
 | 
					          </button>
 | 
				
			||||||
        {/if}
 | 
					        {/if}
 | 
				
			||||||
        {#if store.state.jwtinfo.userdetails.permissions.includes('RUNNER:DELETE')}
 | 
					        {#if store.state.jwtinfo.userdetails.permissions.includes("RUNNER:DELETE")}
 | 
				
			||||||
          {#if delete_triggered}
 | 
					          {#if delete_triggered}
 | 
				
			||||||
            <button
 | 
					            <button
 | 
				
			||||||
              on:click={deleteOrganization}
 | 
					              on:click={deleteOrganization}
 | 
				
			||||||
              class="w-full justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-red-600 text-base font-medium text-white hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:ml-3 sm:w-auto sm:text-sm">{$_('confirm-delete')}</button>
 | 
					              class="w-full justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-red-600 text-base font-medium text-white hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:ml-3 sm:w-auto sm:text-sm"
 | 
				
			||||||
 | 
					              >{$_("confirm-delete")}</button
 | 
				
			||||||
 | 
					            >
 | 
				
			||||||
            <button
 | 
					            <button
 | 
				
			||||||
              on:click={() => {
 | 
					              on:click={() => {
 | 
				
			||||||
                delete_triggered = !delete_triggered;
 | 
					                delete_triggered = !delete_triggered;
 | 
				
			||||||
              }}
 | 
					              }}
 | 
				
			||||||
              class="w-full justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-blue-400 text-base font-medium text-white sm:w-auto sm:text-sm">{$_('cancel')}</button>
 | 
					              class="w-full justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-blue-400 text-base font-medium text-white sm:w-auto sm:text-sm"
 | 
				
			||||||
 | 
					              >{$_("cancel")}</button
 | 
				
			||||||
 | 
					            >
 | 
				
			||||||
          {/if}
 | 
					          {/if}
 | 
				
			||||||
          {#if !delete_triggered}
 | 
					          {#if !delete_triggered}
 | 
				
			||||||
            <button
 | 
					            <button
 | 
				
			||||||
@@ -206,7 +213,9 @@
 | 
				
			|||||||
                delete_triggered = true;
 | 
					                delete_triggered = true;
 | 
				
			||||||
              }}
 | 
					              }}
 | 
				
			||||||
              type="button"
 | 
					              type="button"
 | 
				
			||||||
              class="w-full justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-red-600 text-base font-medium text-white hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:ml-3 sm:w-auto sm:text-sm">{$_('delete-organization')}</button>
 | 
					              class="w-full justify-center rounded-md border border-transparent shadow-sm px-4 py-2 bg-red-600 text-base font-medium text-white hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:ml-3 sm:w-auto sm:text-sm"
 | 
				
			||||||
 | 
					              >{$_("delete-organization")}</button
 | 
				
			||||||
 | 
					            >
 | 
				
			||||||
          {/if}
 | 
					          {/if}
 | 
				
			||||||
        {/if}
 | 
					        {/if}
 | 
				
			||||||
        {#if !delete_triggered}
 | 
					        {#if !delete_triggered}
 | 
				
			||||||
@@ -215,7 +224,9 @@
 | 
				
			|||||||
            disabled={!save_enabled}
 | 
					            disabled={!save_enabled}
 | 
				
			||||||
            class:opacity-50={!save_enabled}
 | 
					            class:opacity-50={!save_enabled}
 | 
				
			||||||
            type="button"
 | 
					            type="button"
 | 
				
			||||||
            class="w-full 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">{$_('save-changes')}</button>
 | 
					            class="w-full 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"
 | 
				
			||||||
 | 
					            >{$_("save-changes")}</button
 | 
				
			||||||
 | 
					          >
 | 
				
			||||||
        {/if}
 | 
					        {/if}
 | 
				
			||||||
      </span>
 | 
					      </span>
 | 
				
			||||||
    </div>
 | 
					    </div>
 | 
				
			||||||
@@ -234,12 +245,13 @@
 | 
				
			|||||||
                class="h-3 w-3 stroke-current"
 | 
					                class="h-3 w-3 stroke-current"
 | 
				
			||||||
                height="1em"
 | 
					                height="1em"
 | 
				
			||||||
                width="1em"
 | 
					                width="1em"
 | 
				
			||||||
                xmlns="http://www.w3.org/2000/svg"><path
 | 
					                xmlns="http://www.w3.org/2000/svg"
 | 
				
			||||||
                  d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" />
 | 
					                ><path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" />
 | 
				
			||||||
                <polyline points="9 22 9 12 15 12 15 22" /></svg>
 | 
					                <polyline points="9 22 9 12 15 12 15 22" /></svg
 | 
				
			||||||
 | 
					              >
 | 
				
			||||||
            </li>
 | 
					            </li>
 | 
				
			||||||
            <li class="flex items-center">
 | 
					            <li class="flex items-center">
 | 
				
			||||||
              <a class="mr-2" href="/">{$_('home')}</a><svg
 | 
					              <a class="mr-2" href="/">{$_("home")}</a><svg
 | 
				
			||||||
                stroke="currentColor"
 | 
					                stroke="currentColor"
 | 
				
			||||||
                fill="none"
 | 
					                fill="none"
 | 
				
			||||||
                stroke-width="2"
 | 
					                stroke-width="2"
 | 
				
			||||||
@@ -249,24 +261,25 @@
 | 
				
			|||||||
                class="h-3 w-3 mr-2 stroke-current"
 | 
					                class="h-3 w-3 mr-2 stroke-current"
 | 
				
			||||||
                height="1em"
 | 
					                height="1em"
 | 
				
			||||||
                width="1em"
 | 
					                width="1em"
 | 
				
			||||||
                xmlns="http://www.w3.org/2000/svg"><line
 | 
					                xmlns="http://www.w3.org/2000/svg"
 | 
				
			||||||
                  x1="5"
 | 
					                ><line x1="5" y1="12" x2="19" y2="12" />
 | 
				
			||||||
                  y1="12"
 | 
					                <polyline points="12 5 19 12 12 19" /></svg
 | 
				
			||||||
                  x2="19"
 | 
					              >
 | 
				
			||||||
                  y2="12" />
 | 
					 | 
				
			||||||
                <polyline points="12 5 19 12 12 19" /></svg>
 | 
					 | 
				
			||||||
            </li>
 | 
					            </li>
 | 
				
			||||||
            <li class="mr-2 flex items-center">
 | 
					            <li class="mr-2 flex items-center">
 | 
				
			||||||
              <svg
 | 
					              <svg
 | 
				
			||||||
                xmlns="http://www.w3.org/2000/svg"
 | 
					                xmlns="http://www.w3.org/2000/svg"
 | 
				
			||||||
                viewBox="0 0 24 24"
 | 
					                viewBox="0 0 24 24"
 | 
				
			||||||
                width="24"
 | 
					                width="24"
 | 
				
			||||||
                height="24"><path fill="none" d="M0 0h24v24H0z" />
 | 
					                height="24"
 | 
				
			||||||
 | 
					                ><path fill="none" d="M0 0h24v24H0z" />
 | 
				
			||||||
                <path
 | 
					                <path
 | 
				
			||||||
                  d="M21 20h2v2H1v-2h2V3a1 1 0 0 1 1-1h16a1 1 0 0 1 1 1v17zm-2 0V4H5v16h14zM8 11h3v2H8v-2zm0-4h3v2H8V7zm0 8h3v2H8v-2zm5 0h3v2h-3v-2zm0-4h3v2h-3v-2zm0-4h3v2h-3V7z" /></svg>
 | 
					                  d="M21 20h2v2H1v-2h2V3a1 1 0 0 1 1-1h16a1 1 0 0 1 1 1v17zm-2 0V4H5v16h14zM8 11h3v2H8v-2zm0-4h3v2H8V7zm0 8h3v2H8v-2zm5 0h3v2h-3v-2zm0-4h3v2h-3v-2zm0-4h3v2h-3V7z"
 | 
				
			||||||
 | 
					                /></svg
 | 
				
			||||||
 | 
					              >
 | 
				
			||||||
            </li>
 | 
					            </li>
 | 
				
			||||||
            <li class="flex items-center">
 | 
					            <li class="flex items-center">
 | 
				
			||||||
              <a class="mr-2" href="./">{$_('organizations')}</a><svg
 | 
					              <a class="mr-2" href="./">{$_("organizations")}</a><svg
 | 
				
			||||||
                stroke="currentColor"
 | 
					                stroke="currentColor"
 | 
				
			||||||
                fill="none"
 | 
					                fill="none"
 | 
				
			||||||
                stroke-width="2"
 | 
					                stroke-width="2"
 | 
				
			||||||
@@ -276,12 +289,10 @@
 | 
				
			|||||||
                class="h-3 w-3 mr-2 stroke-current"
 | 
					                class="h-3 w-3 mr-2 stroke-current"
 | 
				
			||||||
                height="1em"
 | 
					                height="1em"
 | 
				
			||||||
                width="1em"
 | 
					                width="1em"
 | 
				
			||||||
                xmlns="http://www.w3.org/2000/svg"><line
 | 
					                xmlns="http://www.w3.org/2000/svg"
 | 
				
			||||||
                  x1="5"
 | 
					                ><line x1="5" y1="12" x2="19" y2="12" />
 | 
				
			||||||
                  y1="12"
 | 
					                <polyline points="12 5 19 12 12 19" /></svg
 | 
				
			||||||
                  x2="19"
 | 
					              >
 | 
				
			||||||
                  y2="12" />
 | 
					 | 
				
			||||||
                <polyline points="12 5 19 12 12 19" /></svg>
 | 
					 | 
				
			||||||
            </li>
 | 
					            </li>
 | 
				
			||||||
            <li class="flex items-center">
 | 
					            <li class="flex items-center">
 | 
				
			||||||
              <span class="mr-2">Org-Details #{params.orgid}</span>
 | 
					              <span class="mr-2">Org-Details #{params.orgid}</span>
 | 
				
			||||||
@@ -291,35 +302,34 @@
 | 
				
			|||||||
      </div>
 | 
					      </div>
 | 
				
			||||||
    </div>
 | 
					    </div>
 | 
				
			||||||
    <div class="text-sm w-full">
 | 
					    <div class="text-sm w-full">
 | 
				
			||||||
      <label for="name" class="font-medium text-gray-700">{$_('name')}</label>
 | 
					      <label for="name" class="font-medium text-gray-700">{$_("name")}</label>
 | 
				
			||||||
      <input
 | 
					      <input
 | 
				
			||||||
        autocomplete="off"
 | 
					        autocomplete="off"
 | 
				
			||||||
        placeholder={$_('name')}
 | 
					        placeholder={$_("name")}
 | 
				
			||||||
        type="text"
 | 
					        type="text"
 | 
				
			||||||
        bind:value={editable.name}
 | 
					        bind:value={editable.name}
 | 
				
			||||||
        name="name"
 | 
					        name="name"
 | 
				
			||||||
        class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2" />
 | 
					        class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2"
 | 
				
			||||||
 | 
					      />
 | 
				
			||||||
    </div>
 | 
					    </div>
 | 
				
			||||||
    <div class="text-sm w-full">
 | 
					    <div class="text-sm w-full">
 | 
				
			||||||
      <label
 | 
					      <label for="contact" class="font-medium text-gray-700"
 | 
				
			||||||
        for="contact"
 | 
					        >{$_("contact")}</label
 | 
				
			||||||
        class="font-medium text-gray-700">{$_('contact')}</label>
 | 
					      >
 | 
				
			||||||
      <Select
 | 
					      <Select
 | 
				
			||||||
        containerClasses="rounded-l-md mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2"
 | 
					        containerClasses="rounded-l-md mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2"
 | 
				
			||||||
        itemFilter={(label, filterText, option) => label
 | 
					        itemFilter={(label, filterText, option) =>
 | 
				
			||||||
            .toLowerCase()
 | 
					          label.toLowerCase().includes(filterText.toLowerCase()) ||
 | 
				
			||||||
            .includes(
 | 
					          option.value.id.toString().startsWith(filterText.toLowerCase())}
 | 
				
			||||||
              filterText.toLowerCase()
 | 
					 | 
				
			||||||
            ) || option.value.id
 | 
					 | 
				
			||||||
            .toString()
 | 
					 | 
				
			||||||
            .startsWith(filterText.toLowerCase())}
 | 
					 | 
				
			||||||
        items={contacts}
 | 
					        items={contacts}
 | 
				
			||||||
        showChevron={true}
 | 
					        showChevron={true}
 | 
				
			||||||
        placeholder={$_('no-contact-selected')}
 | 
					        placeholder={$_("no-contact-selected")}
 | 
				
			||||||
        noOptionsMessage={$_('no-contact-found')}
 | 
					        noOptionsMessage={$_("no-contact-found")}
 | 
				
			||||||
        bind:selectedValue={contact}
 | 
					        bind:selectedValue={contact}
 | 
				
			||||||
        on:select={(selectedValue) => (editable.contact = selectedValue.detail.value)}
 | 
					        on:select={(selectedValue) =>
 | 
				
			||||||
        on:clear={() => (editable.contact = null)} />
 | 
					          (editable.contact = selectedValue.detail.value)}
 | 
				
			||||||
 | 
					        on:clear={() => (editable.contact = null)}
 | 
				
			||||||
 | 
					      />
 | 
				
			||||||
    </div>
 | 
					    </div>
 | 
				
			||||||
    <div>
 | 
					    <div>
 | 
				
			||||||
      <div class="flex items-start mt-2">
 | 
					      <div class="flex items-start mt-2">
 | 
				
			||||||
@@ -329,43 +339,51 @@
 | 
				
			|||||||
            id="toggle_selfservice_feature"
 | 
					            id="toggle_selfservice_feature"
 | 
				
			||||||
            name="toggle_selfservice_feature"
 | 
					            name="toggle_selfservice_feature"
 | 
				
			||||||
            type="checkbox"
 | 
					            type="checkbox"
 | 
				
			||||||
            class="focus:ring-indigo-500 h-4 w-4 text-indigo-600 border-gray-300 rounded" />
 | 
					            class="focus:ring-indigo-500 h-4 w-4 text-indigo-600 border-gray-300 rounded"
 | 
				
			||||||
 | 
					          />
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
        <div class="ml-3 text-sm">
 | 
					        <div class="ml-3 text-sm">
 | 
				
			||||||
          <label
 | 
					          <label
 | 
				
			||||||
            for="toggle_selfservice_feature"
 | 
					            for="toggle_selfservice_feature"
 | 
				
			||||||
            class="font-medium text-gray-700">{$_('selfservice-registration')}</label>
 | 
					            class="font-medium text-gray-700"
 | 
				
			||||||
 | 
					            >{$_("selfservice-registration")}</label
 | 
				
			||||||
 | 
					          >
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
      </div>
 | 
					      </div>
 | 
				
			||||||
      <div>
 | 
					      <div>
 | 
				
			||||||
        {#if editable.registrationEnabled}
 | 
					        {#if editable.registrationEnabled}
 | 
				
			||||||
          <div class="text-sm w-full">
 | 
					          <div class="text-sm w-full">
 | 
				
			||||||
            <div on:click={copy} class="inline-flex w-full">
 | 
					            <button on:click={copy} class="inline-flex w-full">
 | 
				
			||||||
              <p
 | 
					              <p
 | 
				
			||||||
                name="token"
 | 
					                name="token"
 | 
				
			||||||
                class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 p-2">
 | 
					                class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 p-2"
 | 
				
			||||||
 | 
					              >
 | 
				
			||||||
                {#if editable.registrationKey}
 | 
					                {#if editable.registrationKey}
 | 
				
			||||||
                {registrationLink}
 | 
					                  {registrationLink}
 | 
				
			||||||
                {:else}
 | 
					                {:else}
 | 
				
			||||||
                {$_('you-have-to-save-your-changes-to-generate-a-link')}
 | 
					                  {$_("you-have-to-save-your-changes-to-generate-a-link")}
 | 
				
			||||||
                {/if}
 | 
					                {/if}
 | 
				
			||||||
              </p>
 | 
					              </p>
 | 
				
			||||||
              <div
 | 
					              <div
 | 
				
			||||||
                class="bg-gray-200 border-gray-300 border-t border-b border-r text-black rounded-r-md sm:text-sm p-2 mt-1 cursor-pointer">
 | 
					                class="bg-gray-200 border-gray-300 border-t border-b border-r text-black rounded-r-md sm:text-sm p-2 mt-1 cursor-pointer"
 | 
				
			||||||
 | 
					              >
 | 
				
			||||||
                <svg
 | 
					                <svg
 | 
				
			||||||
                  xmlns="http://www.w3.org/2000/svg"
 | 
					                  xmlns="http://www.w3.org/2000/svg"
 | 
				
			||||||
                  viewBox="0 0 24 24"
 | 
					                  viewBox="0 0 24 24"
 | 
				
			||||||
                  width="24"
 | 
					                  width="24"
 | 
				
			||||||
                  height="24"><path fill="none" d="M0 0h24v24H0z" />
 | 
					                  height="24"
 | 
				
			||||||
 | 
					                  ><path fill="none" d="M0 0h24v24H0z" />
 | 
				
			||||||
                  <path
 | 
					                  <path
 | 
				
			||||||
                    fill="currentColor"
 | 
					                    fill="currentColor"
 | 
				
			||||||
                    d="M7 4V2h10v2h3l1 1v16a1 1 0 01-1 1H4a1 1 0 01-1-1V5l1-1h3zm0 2H5v14h14V6h-2v2H7V6zm2-2v2h6V4H9z" /></svg>
 | 
					                    d="M7 4V2h10v2h3l1 1v16a1 1 0 01-1 1H4a1 1 0 01-1-1V5l1-1h3zm0 2H5v14h14V6h-2v2H7V6zm2-2v2h6V4H9z"
 | 
				
			||||||
 | 
					                  /></svg
 | 
				
			||||||
 | 
					                >
 | 
				
			||||||
              </div>
 | 
					              </div>
 | 
				
			||||||
            </div>
 | 
					            </button>
 | 
				
			||||||
            {#if editable.registrationKey}
 | 
					            {#if editable.registrationKey}
 | 
				
			||||||
            <p class="text-gray-500 text-xs">
 | 
					              <p class="text-gray-500 text-xs">
 | 
				
			||||||
              {$_('click-to-copy-the-link-into-your-clipboard')}
 | 
					                {$_("click-to-copy-the-link-into-your-clipboard")}
 | 
				
			||||||
            </p>
 | 
					              </p>
 | 
				
			||||||
            {/if}
 | 
					            {/if}
 | 
				
			||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
        {/if}
 | 
					        {/if}
 | 
				
			||||||
@@ -378,12 +396,14 @@
 | 
				
			|||||||
                id="toggle_address_checkbox"
 | 
					                id="toggle_address_checkbox"
 | 
				
			||||||
                name="toggle_address_checkbox"
 | 
					                name="toggle_address_checkbox"
 | 
				
			||||||
                type="checkbox"
 | 
					                type="checkbox"
 | 
				
			||||||
                class="focus:ring-indigo-500 h-4 w-4 text-indigo-600 border-gray-300 rounded" />
 | 
					                class="focus:ring-indigo-500 h-4 w-4 text-indigo-600 border-gray-300 rounded"
 | 
				
			||||||
 | 
					              />
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
            <div class="ml-3 text-sm">
 | 
					            <div class="ml-3 text-sm">
 | 
				
			||||||
              <label
 | 
					              <label
 | 
				
			||||||
                for="toggle_address_checkbox"
 | 
					                for="toggle_address_checkbox"
 | 
				
			||||||
                class="font-medium text-gray-700">{$_('address')}</label>
 | 
					                class="font-medium text-gray-700">{$_("address")}</label
 | 
				
			||||||
 | 
					              >
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
@@ -391,7 +411,9 @@
 | 
				
			|||||||
          <div class="col-span-6">
 | 
					          <div class="col-span-6">
 | 
				
			||||||
            <label
 | 
					            <label
 | 
				
			||||||
              for="address1"
 | 
					              for="address1"
 | 
				
			||||||
              class="block text-sm font-medium text-gray-700">{$_('address')}</label>
 | 
					              class="block text-sm font-medium text-gray-700"
 | 
				
			||||||
 | 
					              >{$_("address")}</label
 | 
				
			||||||
 | 
					            >
 | 
				
			||||||
            <input
 | 
					            <input
 | 
				
			||||||
              autocomplete="off"
 | 
					              autocomplete="off"
 | 
				
			||||||
              placeholder="Address"
 | 
					              placeholder="Address"
 | 
				
			||||||
@@ -401,65 +423,74 @@
 | 
				
			|||||||
              bind:value={editable.address.address1}
 | 
					              bind:value={editable.address.address1}
 | 
				
			||||||
              type="text"
 | 
					              type="text"
 | 
				
			||||||
              name="address1"
 | 
					              name="address1"
 | 
				
			||||||
              class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2" />
 | 
					              class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2"
 | 
				
			||||||
 | 
					            />
 | 
				
			||||||
            {#if !isAddress1Valid}
 | 
					            {#if !isAddress1Valid}
 | 
				
			||||||
              <span
 | 
					              <span
 | 
				
			||||||
                class="flex items-center font-medium tracking-wide text-red-500 text-xs mt-1 ml-1">
 | 
					                class="flex items-center font-medium tracking-wide text-red-500 text-xs mt-1 ml-1"
 | 
				
			||||||
                {$_('address-is-required')}
 | 
					              >
 | 
				
			||||||
 | 
					                {$_("address-is-required")}
 | 
				
			||||||
              </span>
 | 
					              </span>
 | 
				
			||||||
            {/if}
 | 
					            {/if}
 | 
				
			||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
          <div class="col-span-6">
 | 
					          <div class="col-span-6">
 | 
				
			||||||
            <label
 | 
					            <label
 | 
				
			||||||
              for="address2"
 | 
					              for="address2"
 | 
				
			||||||
              class="block text-sm font-medium text-gray-700">{$_('apartment-suite-etc')}</label>
 | 
					              class="block text-sm font-medium text-gray-700"
 | 
				
			||||||
 | 
					              >{$_("apartment-suite-etc")}</label
 | 
				
			||||||
 | 
					            >
 | 
				
			||||||
            <input
 | 
					            <input
 | 
				
			||||||
              autocomplete="off"
 | 
					              autocomplete="off"
 | 
				
			||||||
              placeholder={$_('apartment-suite-etc')}
 | 
					              placeholder={$_("apartment-suite-etc")}
 | 
				
			||||||
              bind:value={editable.address.address2}
 | 
					              bind:value={editable.address.address2}
 | 
				
			||||||
              type="text"
 | 
					              type="text"
 | 
				
			||||||
              name="address2"
 | 
					              name="address2"
 | 
				
			||||||
              class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2" />
 | 
					              class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2"
 | 
				
			||||||
 | 
					            />
 | 
				
			||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
          <div class="col-span-6">
 | 
					          <div class="col-span-6">
 | 
				
			||||||
            <label
 | 
					            <label for="zipcode" class="block text-sm font-medium text-gray-700"
 | 
				
			||||||
              for="zipcode"
 | 
					              >{$_("zip-postal-code")}</label
 | 
				
			||||||
              class="block text-sm font-medium text-gray-700">{$_('zip-postal-code')}</label>
 | 
					            >
 | 
				
			||||||
            <input
 | 
					            <input
 | 
				
			||||||
              autocomplete="off"
 | 
					              autocomplete="off"
 | 
				
			||||||
              placeholder={$_('zip-postal-code')}
 | 
					              placeholder={$_("zip-postal-code")}
 | 
				
			||||||
              class:border-red-500={!iszipcodevalid}
 | 
					              class:border-red-500={!iszipcodevalid}
 | 
				
			||||||
              class:focus:border-red-500={!iszipcodevalid}
 | 
					              class:focus:border-red-500={!iszipcodevalid}
 | 
				
			||||||
              class:focus:ring-red-500={!iszipcodevalid}
 | 
					              class:focus:ring-red-500={!iszipcodevalid}
 | 
				
			||||||
              bind:value={editable.address.postalcode}
 | 
					              bind:value={editable.address.postalcode}
 | 
				
			||||||
              type="text"
 | 
					              type="text"
 | 
				
			||||||
              name="zipcode"
 | 
					              name="zipcode"
 | 
				
			||||||
              class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2" />
 | 
					              class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2"
 | 
				
			||||||
 | 
					            />
 | 
				
			||||||
            {#if !iszipcodevalid}
 | 
					            {#if !iszipcodevalid}
 | 
				
			||||||
              <span
 | 
					              <span
 | 
				
			||||||
                class="flex items-center font-medium tracking-wide text-red-500 text-xs mt-1 ml-1">
 | 
					                class="flex items-center font-medium tracking-wide text-red-500 text-xs mt-1 ml-1"
 | 
				
			||||||
                {$_('valid-zipcode-postal-code-is-required')}
 | 
					              >
 | 
				
			||||||
 | 
					                {$_("valid-zipcode-postal-code-is-required")}
 | 
				
			||||||
              </span>
 | 
					              </span>
 | 
				
			||||||
            {/if}
 | 
					            {/if}
 | 
				
			||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
          <div class="col-span-6">
 | 
					          <div class="col-span-6">
 | 
				
			||||||
            <label
 | 
					            <label for="city" class="block text-sm font-medium text-gray-700"
 | 
				
			||||||
              for="city"
 | 
					              >{$_("city")}</label
 | 
				
			||||||
              class="block text-sm font-medium text-gray-700">{$_('city')}</label>
 | 
					            >
 | 
				
			||||||
            <input
 | 
					            <input
 | 
				
			||||||
              autocomplete="off"
 | 
					              autocomplete="off"
 | 
				
			||||||
              placeholder={$_('city')}
 | 
					              placeholder={$_("city")}
 | 
				
			||||||
              class:border-red-500={!iscityvalid}
 | 
					              class:border-red-500={!iscityvalid}
 | 
				
			||||||
              class:focus:border-red-500={!iscityvalid}
 | 
					              class:focus:border-red-500={!iscityvalid}
 | 
				
			||||||
              class:focus:ring-red-500={!iscityvalid}
 | 
					              class:focus:ring-red-500={!iscityvalid}
 | 
				
			||||||
              bind:value={editable.address.city}
 | 
					              bind:value={editable.address.city}
 | 
				
			||||||
              type="text"
 | 
					              type="text"
 | 
				
			||||||
              name="city"
 | 
					              name="city"
 | 
				
			||||||
              class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2" />
 | 
					              class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 rounded-md p-2"
 | 
				
			||||||
 | 
					            />
 | 
				
			||||||
            {#if !iscityvalid}
 | 
					            {#if !iscityvalid}
 | 
				
			||||||
              <span
 | 
					              <span
 | 
				
			||||||
                class="flex items-center font-medium tracking-wide text-red-500 text-xs mt-1 ml-1">
 | 
					                class="flex items-center font-medium tracking-wide text-red-500 text-xs mt-1 ml-1"
 | 
				
			||||||
                {$_('valid-city-is-required')}
 | 
					              >
 | 
				
			||||||
 | 
					                {$_("valid-city-is-required")}
 | 
				
			||||||
              </span>
 | 
					              </span>
 | 
				
			||||||
            {/if}
 | 
					            {/if}
 | 
				
			||||||
          </div>
 | 
					          </div>
 | 
				
			||||||
@@ -469,7 +500,7 @@
 | 
				
			|||||||
  </section>
 | 
					  </section>
 | 
				
			||||||
{:else}
 | 
					{:else}
 | 
				
			||||||
  {#await promise}
 | 
					  {#await promise}
 | 
				
			||||||
    {$_('organization-detail-is-being-loaded')}
 | 
					    {$_("organization-detail-is-being-loaded")}
 | 
				
			||||||
  {:catch error}
 | 
					  {:catch error}
 | 
				
			||||||
    <PromiseError />
 | 
					    <PromiseError />
 | 
				
			||||||
  {/await}
 | 
					  {/await}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -95,6 +95,14 @@
 | 
				
			|||||||
      },
 | 
					      },
 | 
				
			||||||
      enableColumnFilter: false,
 | 
					      enableColumnFilter: false,
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      accessorKey: "timestamp",
 | 
				
			||||||
 | 
					      header: () => $_("timestamp"),
 | 
				
			||||||
 | 
					      cell: (info) => {
 | 
				
			||||||
 | 
					        return (new Date(parseInt(info.getValue())*1000)).toLocaleString()
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      enableColumnFilter: false,
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      accessorKey: "distance",
 | 
					      accessorKey: "distance",
 | 
				
			||||||
      header: () => $_("distance"),
 | 
					      header: () => $_("distance"),
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -13,7 +13,7 @@
 | 
				
			|||||||
    dispatch("cancelDelete", { id: delete_station.id });
 | 
					    dispatch("cancelDelete", { id: delete_station.id });
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  function deleteStation() {
 | 
					  function deleteStation() {
 | 
				
			||||||
    ScanStationService.donorControllerRemove(
 | 
					    ScanStationService.scanStationControllerRemove(
 | 
				
			||||||
      delete_station.id,
 | 
					      delete_station.id,
 | 
				
			||||||
      true
 | 
					      true
 | 
				
			||||||
    )
 | 
					    )
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
<script>
 | 
					<script>
 | 
				
			||||||
  import { _ } from "svelte-i18n";
 | 
					  import { _ } from "svelte-i18n";
 | 
				
			||||||
  
 | 
					
 | 
				
			||||||
  import Toastify from "toastify-js";
 | 
					  import Toastify from "toastify-js";
 | 
				
			||||||
  import { tick, createEventDispatcher } from "svelte";
 | 
					  import { tick, createEventDispatcher } from "svelte";
 | 
				
			||||||
  export let copy_modal_open;
 | 
					  export let copy_modal_open;
 | 
				
			||||||
@@ -46,70 +46,87 @@
 | 
				
			|||||||
  {#if valueCopy != null}
 | 
					  {#if valueCopy != null}
 | 
				
			||||||
    <textarea bind:this={areaDom}>{valueCopy}</textarea>
 | 
					    <textarea bind:this={areaDom}>{valueCopy}</textarea>
 | 
				
			||||||
  {/if}
 | 
					  {/if}
 | 
				
			||||||
  <div class="fixed z-10 inset-0 overflow-y-auto" >
 | 
					  <div class="fixed z-10 inset-0 overflow-y-auto">
 | 
				
			||||||
    <div
 | 
					    <div
 | 
				
			||||||
      class="flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0">
 | 
					      class="flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0"
 | 
				
			||||||
 | 
					    >
 | 
				
			||||||
      <div class="fixed inset-0 transition-opacity" aria-hidden="true">
 | 
					      <div class="fixed inset-0 transition-opacity" aria-hidden="true">
 | 
				
			||||||
        <div
 | 
					        <div
 | 
				
			||||||
          class="absolute inset-0 bg-gray-500 opacity-75"
 | 
					          class="absolute inset-0 bg-gray-500 opacity-75"
 | 
				
			||||||
          data-id="modal_backdrop" />
 | 
					          data-id="modal_backdrop"
 | 
				
			||||||
 | 
					        />
 | 
				
			||||||
      </div>
 | 
					      </div>
 | 
				
			||||||
      <span
 | 
					      <span
 | 
				
			||||||
        class="hidden sm:inline-block sm:align-middle sm:h-screen"
 | 
					        class="hidden sm:inline-block sm:align-middle sm:h-screen"
 | 
				
			||||||
        aria-hidden="true">​</span>
 | 
					        aria-hidden="true">​</span
 | 
				
			||||||
 | 
					      >
 | 
				
			||||||
      <div
 | 
					      <div
 | 
				
			||||||
        class="inline-block align-bottom bg-white rounded-lg text-left overflow-hidden shadow-xl transform transition-all sm:my-8 sm:align-middle sm:max-w-lg sm:w-full"
 | 
					        class="inline-block align-bottom bg-white rounded-lg text-left overflow-hidden shadow-xl transform transition-all sm:my-8 sm:align-middle sm:max-w-lg sm:w-full"
 | 
				
			||||||
        role="dialog"
 | 
					        role="dialog"
 | 
				
			||||||
        aria-modal="true"
 | 
					        aria-modal="true"
 | 
				
			||||||
        aria-labelledby="modal-headline">
 | 
					        aria-labelledby="modal-headline"
 | 
				
			||||||
 | 
					      >
 | 
				
			||||||
        <div class="bg-white px-4 pt-5 pb-4 sm:p-6 sm:pb-4">
 | 
					        <div class="bg-white px-4 pt-5 pb-4 sm:p-6 sm:pb-4">
 | 
				
			||||||
          <div class="sm:flex sm:items-start">
 | 
					          <div class="sm:flex sm:items-start">
 | 
				
			||||||
            <div
 | 
					            <div
 | 
				
			||||||
              class="mx-auto flex-shrink-0 flex items-center justify-center h-12 w-12 rounded-full bg-blue-100 sm:mx-0 sm:h-10 sm:w-10">
 | 
					              class="mx-auto flex-shrink-0 flex items-center justify-center h-12 w-12 rounded-full bg-blue-100 sm:mx-0 sm:h-10 sm:w-10"
 | 
				
			||||||
 | 
					            >
 | 
				
			||||||
              <svg
 | 
					              <svg
 | 
				
			||||||
                class="h-6 w-6 text-blue-600"
 | 
					                class="h-6 w-6 text-blue-600"
 | 
				
			||||||
                fill="currentColor"
 | 
					                fill="currentColor"
 | 
				
			||||||
                xmlns="http://www.w3.org/2000/svg"
 | 
					                xmlns="http://www.w3.org/2000/svg"
 | 
				
			||||||
                viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z" />
 | 
					                viewBox="0 0 24 24"
 | 
				
			||||||
 | 
					                ><path fill="none" d="M0 0h24v24H0z" />
 | 
				
			||||||
                <path
 | 
					                <path
 | 
				
			||||||
                  d="M4 5v11h16V5H4zM2 4a1 1 0 011-1h18a1 1 0 011 1v14H2V4zM1 19h22v2H1v-2z" /></svg>
 | 
					                  d="M4 5v11h16V5H4zM2 4a1 1 0 011-1h18a1 1 0 011 1v14H2V4zM1 19h22v2H1v-2z"
 | 
				
			||||||
 | 
					                /></svg
 | 
				
			||||||
 | 
					              >
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
            <div class="mt-3 text-center sm:mt-0 sm:ml-4 sm:text-left">
 | 
					            <div class="mt-3 text-center sm:mt-0 sm:ml-4 sm:text-left">
 | 
				
			||||||
              <h3 class="text-lg leading-6 font-medium text-gray-900">
 | 
					              <h3 class="text-lg leading-6 font-medium text-gray-900">
 | 
				
			||||||
                {$_('token')}
 | 
					                {$_("token")}
 | 
				
			||||||
              </h3>
 | 
					              </h3>
 | 
				
			||||||
              <div class="mt-2 mb-6">
 | 
					              <div class="mt-2 mb-6">
 | 
				
			||||||
                <p class="text-sm text-gray-500">
 | 
					                <p class="text-sm text-gray-500">
 | 
				
			||||||
                  {$_('the-scanstations-api-token-will-only-get-displayed-once-you-wont-be-able-to-change-or-view-it-again')}
 | 
					                  {$_(
 | 
				
			||||||
 | 
					                    "the-scanstations-api-token-will-only-get-displayed-once-you-wont-be-able-to-change-or-view-it-again"
 | 
				
			||||||
 | 
					                  )}
 | 
				
			||||||
                  <br />
 | 
					                  <br />
 | 
				
			||||||
                  {$_('please-copy-the-token-and-store-it-somewhere-save')}
 | 
					                  {$_("please-copy-the-token-and-store-it-somewhere-save")}
 | 
				
			||||||
                </p>
 | 
					                </p>
 | 
				
			||||||
              </div>
 | 
					              </div>
 | 
				
			||||||
              <div class="mt-2 mb-6">
 | 
					              <div class="mt-2 mb-6">
 | 
				
			||||||
                <label
 | 
					                <label
 | 
				
			||||||
                  for="token"
 | 
					                  for="token"
 | 
				
			||||||
                  class="block text-sm font-medium text-gray-700">{$_('token')}</label>
 | 
					                  class="block text-sm font-medium text-gray-700"
 | 
				
			||||||
                <div on:click={copy} class="inline-flex">
 | 
					                  >{$_("token")}</label
 | 
				
			||||||
 | 
					                >
 | 
				
			||||||
 | 
					                <button on:click={copy} class="inline-flex">
 | 
				
			||||||
                  <p
 | 
					                  <p
 | 
				
			||||||
                    name="token"
 | 
					                    name="token"
 | 
				
			||||||
                    class:bg-green-200={copied}
 | 
					                    class:bg-green-200={copied}
 | 
				
			||||||
                    class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 p-2">
 | 
					                    class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 p-2"
 | 
				
			||||||
 | 
					                  >
 | 
				
			||||||
                    {new_station.key}
 | 
					                    {new_station.key}
 | 
				
			||||||
                  </p>
 | 
					                  </p>
 | 
				
			||||||
                  <div
 | 
					                  <div
 | 
				
			||||||
                    class="bg-gray-200 border-gray-300 border-t border-b border-r text-black rounded-r-md sm:text-sm p-2 mt-1 cursor-pointer">
 | 
					                    class="bg-gray-200 border-gray-300 border-t border-b border-r text-black rounded-r-md sm:text-sm p-2 mt-1 cursor-pointer"
 | 
				
			||||||
 | 
					                  >
 | 
				
			||||||
                    <svg
 | 
					                    <svg
 | 
				
			||||||
                      xmlns="http://www.w3.org/2000/svg"
 | 
					                      xmlns="http://www.w3.org/2000/svg"
 | 
				
			||||||
                      viewBox="0 0 24 24"
 | 
					                      viewBox="0 0 24 24"
 | 
				
			||||||
                      width="24"
 | 
					                      width="24"
 | 
				
			||||||
                      height="24"><path fill="none" d="M0 0h24v24H0z" />
 | 
					                      height="24"
 | 
				
			||||||
 | 
					                      ><path fill="none" d="M0 0h24v24H0z" />
 | 
				
			||||||
                      <path
 | 
					                      <path
 | 
				
			||||||
                        fill="currentColor"
 | 
					                        fill="currentColor"
 | 
				
			||||||
                        d="M7 4V2h10v2h3l1 1v16a1 1 0 01-1 1H4a1 1 0 01-1-1V5l1-1h3zm0 2H5v14h14V6h-2v2H7V6zm2-2v2h6V4H9z" /></svg>
 | 
					                        d="M7 4V2h10v2h3l1 1v16a1 1 0 01-1 1H4a1 1 0 01-1-1V5l1-1h3zm0 2H5v14h14V6h-2v2H7V6zm2-2v2h6V4H9z"
 | 
				
			||||||
 | 
					                      /></svg
 | 
				
			||||||
 | 
					                    >
 | 
				
			||||||
                  </div>
 | 
					                  </div>
 | 
				
			||||||
                </div>
 | 
					                </button>
 | 
				
			||||||
                <p class="text-gray-500 text-xs">
 | 
					                <p class="text-gray-500 text-xs">
 | 
				
			||||||
                  {$_('click-to-copy-token-to-clipboard')}
 | 
					                  {$_("click-to-copy-token-to-clipboard")}
 | 
				
			||||||
                </p>
 | 
					                </p>
 | 
				
			||||||
              </div>
 | 
					              </div>
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
@@ -119,8 +136,9 @@
 | 
				
			|||||||
          <button
 | 
					          <button
 | 
				
			||||||
            on:click={close}
 | 
					            on:click={close}
 | 
				
			||||||
            type="button"
 | 
					            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-green-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:ml-3 sm:w-auto sm:text-sm">
 | 
					            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-green-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:ml-3 sm:w-auto sm:text-sm"
 | 
				
			||||||
            {$_('yes-i-copied-the-token')}
 | 
					          >
 | 
				
			||||||
 | 
					            {$_("yes-i-copied-the-token")}
 | 
				
			||||||
          </button>
 | 
					          </button>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
      </div>
 | 
					      </div>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,8 +1,7 @@
 | 
				
			|||||||
<script>
 | 
					<script>
 | 
				
			||||||
  import { _ } from "svelte-i18n";
 | 
					  import { _ } from "svelte-i18n";
 | 
				
			||||||
  import { clickOutside } from "../base/outsideclick";
 | 
					  import { clickOutside } from "../base/outsideclick";
 | 
				
			||||||
  
 | 
					  import { StatsClientService } from "@odit/lfk-client-js";
 | 
				
			||||||
  import { ScanStationService } from "@odit/lfk-client-js";
 | 
					 | 
				
			||||||
  import Toastify from "toastify-js";
 | 
					  import Toastify from "toastify-js";
 | 
				
			||||||
  import { createEventDispatcher } from "svelte";
 | 
					  import { createEventDispatcher } from "svelte";
 | 
				
			||||||
  export let modal_open;
 | 
					  export let modal_open;
 | 
				
			||||||
@@ -13,10 +12,7 @@
 | 
				
			|||||||
    dispatch("cancelDelete", { id: delete_station.id });
 | 
					    dispatch("cancelDelete", { id: delete_station.id });
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  function deleteClient() {
 | 
					  function deleteClient() {
 | 
				
			||||||
    ScanStationService.donorControllerRemove(
 | 
					    StatsClientService.statsClientControllerRemove(delete_station.id, true)
 | 
				
			||||||
      delete_station.id,
 | 
					 | 
				
			||||||
      true
 | 
					 | 
				
			||||||
    )
 | 
					 | 
				
			||||||
      .then((resp) => {
 | 
					      .then((resp) => {
 | 
				
			||||||
        Toastify({
 | 
					        Toastify({
 | 
				
			||||||
          text: $_('statsclient-deleted'),
 | 
					          text: $_('statsclient-deleted'),
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
<script>
 | 
					<script>
 | 
				
			||||||
  import { _ } from "svelte-i18n";
 | 
					  import { _ } from "svelte-i18n";
 | 
				
			||||||
  
 | 
					
 | 
				
			||||||
  import Toastify from "toastify-js";
 | 
					  import Toastify from "toastify-js";
 | 
				
			||||||
  import { tick, createEventDispatcher } from "svelte";
 | 
					  import { tick, createEventDispatcher } from "svelte";
 | 
				
			||||||
  export let copy_modal_open;
 | 
					  export let copy_modal_open;
 | 
				
			||||||
@@ -46,70 +46,87 @@
 | 
				
			|||||||
  {#if valueCopy != null}
 | 
					  {#if valueCopy != null}
 | 
				
			||||||
    <textarea bind:this={areaDom}>{valueCopy}</textarea>
 | 
					    <textarea bind:this={areaDom}>{valueCopy}</textarea>
 | 
				
			||||||
  {/if}
 | 
					  {/if}
 | 
				
			||||||
  <div class="fixed z-10 inset-0 overflow-y-auto" >
 | 
					  <div class="fixed z-10 inset-0 overflow-y-auto">
 | 
				
			||||||
    <div
 | 
					    <div
 | 
				
			||||||
      class="flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0">
 | 
					      class="flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block sm:p-0"
 | 
				
			||||||
 | 
					    >
 | 
				
			||||||
      <div class="fixed inset-0 transition-opacity" aria-hidden="true">
 | 
					      <div class="fixed inset-0 transition-opacity" aria-hidden="true">
 | 
				
			||||||
        <div
 | 
					        <div
 | 
				
			||||||
          class="absolute inset-0 bg-gray-500 opacity-75"
 | 
					          class="absolute inset-0 bg-gray-500 opacity-75"
 | 
				
			||||||
          data-id="modal_backdrop" />
 | 
					          data-id="modal_backdrop"
 | 
				
			||||||
 | 
					        />
 | 
				
			||||||
      </div>
 | 
					      </div>
 | 
				
			||||||
      <span
 | 
					      <span
 | 
				
			||||||
        class="hidden sm:inline-block sm:align-middle sm:h-screen"
 | 
					        class="hidden sm:inline-block sm:align-middle sm:h-screen"
 | 
				
			||||||
        aria-hidden="true">​</span>
 | 
					        aria-hidden="true">​</span
 | 
				
			||||||
 | 
					      >
 | 
				
			||||||
      <div
 | 
					      <div
 | 
				
			||||||
        class="inline-block align-bottom bg-white rounded-lg text-left overflow-hidden shadow-xl transform transition-all sm:my-8 sm:align-middle sm:max-w-lg sm:w-full"
 | 
					        class="inline-block align-bottom bg-white rounded-lg text-left overflow-hidden shadow-xl transform transition-all sm:my-8 sm:align-middle sm:max-w-lg sm:w-full"
 | 
				
			||||||
        role="dialog"
 | 
					        role="dialog"
 | 
				
			||||||
        aria-modal="true"
 | 
					        aria-modal="true"
 | 
				
			||||||
        aria-labelledby="modal-headline">
 | 
					        aria-labelledby="modal-headline"
 | 
				
			||||||
 | 
					      >
 | 
				
			||||||
        <div class="bg-white px-4 pt-5 pb-4 sm:p-6 sm:pb-4">
 | 
					        <div class="bg-white px-4 pt-5 pb-4 sm:p-6 sm:pb-4">
 | 
				
			||||||
          <div class="sm:flex sm:items-start">
 | 
					          <div class="sm:flex sm:items-start">
 | 
				
			||||||
            <div
 | 
					            <div
 | 
				
			||||||
              class="mx-auto flex-shrink-0 flex items-center justify-center h-12 w-12 rounded-full bg-blue-100 sm:mx-0 sm:h-10 sm:w-10">
 | 
					              class="mx-auto flex-shrink-0 flex items-center justify-center h-12 w-12 rounded-full bg-blue-100 sm:mx-0 sm:h-10 sm:w-10"
 | 
				
			||||||
 | 
					            >
 | 
				
			||||||
              <svg
 | 
					              <svg
 | 
				
			||||||
                class="h-6 w-6 text-blue-600"
 | 
					                class="h-6 w-6 text-blue-600"
 | 
				
			||||||
                fill="currentColor"
 | 
					                fill="currentColor"
 | 
				
			||||||
                xmlns="http://www.w3.org/2000/svg"
 | 
					                xmlns="http://www.w3.org/2000/svg"
 | 
				
			||||||
                viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z" />
 | 
					                viewBox="0 0 24 24"
 | 
				
			||||||
 | 
					                ><path fill="none" d="M0 0h24v24H0z" />
 | 
				
			||||||
                <path
 | 
					                <path
 | 
				
			||||||
                  d="M4 5v11h16V5H4zM2 4a1 1 0 011-1h18a1 1 0 011 1v14H2V4zM1 19h22v2H1v-2z" /></svg>
 | 
					                  d="M4 5v11h16V5H4zM2 4a1 1 0 011-1h18a1 1 0 011 1v14H2V4zM1 19h22v2H1v-2z"
 | 
				
			||||||
 | 
					                /></svg
 | 
				
			||||||
 | 
					              >
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
            <div class="mt-3 text-center sm:mt-0 sm:ml-4 sm:text-left">
 | 
					            <div class="mt-3 text-center sm:mt-0 sm:ml-4 sm:text-left">
 | 
				
			||||||
              <h3 class="text-lg leading-6 font-medium text-gray-900">
 | 
					              <h3 class="text-lg leading-6 font-medium text-gray-900">
 | 
				
			||||||
                {$_('token')}
 | 
					                {$_("token")}
 | 
				
			||||||
              </h3>
 | 
					              </h3>
 | 
				
			||||||
              <div class="mt-2 mb-6">
 | 
					              <div class="mt-2 mb-6">
 | 
				
			||||||
                <p class="text-sm text-gray-500">
 | 
					                <p class="text-sm text-gray-500">
 | 
				
			||||||
                  {$_('the-statsclient-api-token-will-only-get-displayed-once-you-wont-be-able-to-change-or-view-it-again')}
 | 
					                  {$_(
 | 
				
			||||||
 | 
					                    "the-statsclient-api-token-will-only-get-displayed-once-you-wont-be-able-to-change-or-view-it-again"
 | 
				
			||||||
 | 
					                  )}
 | 
				
			||||||
                  <br />
 | 
					                  <br />
 | 
				
			||||||
                  {$_('please-copy-the-token-and-store-it-somewhere-save')}
 | 
					                  {$_("please-copy-the-token-and-store-it-somewhere-save")}
 | 
				
			||||||
                </p>
 | 
					                </p>
 | 
				
			||||||
              </div>
 | 
					              </div>
 | 
				
			||||||
              <div class="mt-2 mb-6">
 | 
					              <div class="mt-2 mb-6">
 | 
				
			||||||
                <label
 | 
					                <label
 | 
				
			||||||
                  for="token"
 | 
					                  for="token"
 | 
				
			||||||
                  class="block text-sm font-medium text-gray-700">{$_('token')}</label>
 | 
					                  class="block text-sm font-medium text-gray-700"
 | 
				
			||||||
                <div on:click={copy} class="inline-flex">
 | 
					                  >{$_("token")}</label
 | 
				
			||||||
 | 
					                >
 | 
				
			||||||
 | 
					                <button on:click={copy} class="inline-flex">
 | 
				
			||||||
                  <p
 | 
					                  <p
 | 
				
			||||||
                    name="token"
 | 
					                    name="token"
 | 
				
			||||||
                    class:bg-green-200={copied}
 | 
					                    class:bg-green-200={copied}
 | 
				
			||||||
                    class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 p-2">
 | 
					                    class="mt-1 focus:ring-indigo-500 focus:border-indigo-500 block w-full shadow-sm rounded-l-md sm:text-sm border-gray-300 border bg-gray-50 text-gray-500 p-2"
 | 
				
			||||||
 | 
					                  >
 | 
				
			||||||
                    {new_client.key}
 | 
					                    {new_client.key}
 | 
				
			||||||
                  </p>
 | 
					                  </p>
 | 
				
			||||||
                  <div
 | 
					                  <div
 | 
				
			||||||
                    class="bg-gray-200 border-gray-300 border-t border-b border-r text-black rounded-r-md sm:text-sm p-2 mt-1 cursor-pointer">
 | 
					                    class="bg-gray-200 border-gray-300 border-t border-b border-r text-black rounded-r-md sm:text-sm p-2 mt-1 cursor-pointer"
 | 
				
			||||||
 | 
					                  >
 | 
				
			||||||
                    <svg
 | 
					                    <svg
 | 
				
			||||||
                      xmlns="http://www.w3.org/2000/svg"
 | 
					                      xmlns="http://www.w3.org/2000/svg"
 | 
				
			||||||
                      viewBox="0 0 24 24"
 | 
					                      viewBox="0 0 24 24"
 | 
				
			||||||
                      width="24"
 | 
					                      width="24"
 | 
				
			||||||
                      height="24"><path fill="none" d="M0 0h24v24H0z" />
 | 
					                      height="24"
 | 
				
			||||||
 | 
					                      ><path fill="none" d="M0 0h24v24H0z" />
 | 
				
			||||||
                      <path
 | 
					                      <path
 | 
				
			||||||
                        fill="currentColor"
 | 
					                        fill="currentColor"
 | 
				
			||||||
                        d="M7 4V2h10v2h3l1 1v16a1 1 0 01-1 1H4a1 1 0 01-1-1V5l1-1h3zm0 2H5v14h14V6h-2v2H7V6zm2-2v2h6V4H9z" /></svg>
 | 
					                        d="M7 4V2h10v2h3l1 1v16a1 1 0 01-1 1H4a1 1 0 01-1-1V5l1-1h3zm0 2H5v14h14V6h-2v2H7V6zm2-2v2h6V4H9z"
 | 
				
			||||||
 | 
					                      /></svg
 | 
				
			||||||
 | 
					                    >
 | 
				
			||||||
                  </div>
 | 
					                  </div>
 | 
				
			||||||
                </div>
 | 
					                </button>
 | 
				
			||||||
                <p class="text-gray-500 text-xs">
 | 
					                <p class="text-gray-500 text-xs">
 | 
				
			||||||
                  {$_('click-to-copy-token-to-clipboard')}
 | 
					                  {$_("click-to-copy-token-to-clipboard")}
 | 
				
			||||||
                </p>
 | 
					                </p>
 | 
				
			||||||
              </div>
 | 
					              </div>
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
@@ -119,8 +136,9 @@
 | 
				
			|||||||
          <button
 | 
					          <button
 | 
				
			||||||
            on:click={close}
 | 
					            on:click={close}
 | 
				
			||||||
            type="button"
 | 
					            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-green-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:ml-3 sm:w-auto sm:text-sm">
 | 
					            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-green-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500 sm:ml-3 sm:w-auto sm:text-sm"
 | 
				
			||||||
            {$_('yes-i-copied-the-token')}
 | 
					          >
 | 
				
			||||||
 | 
					            {$_("yes-i-copied-the-token")}
 | 
				
			||||||
          </button>
 | 
					          </button>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
      </div>
 | 
					      </div>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -33,6 +33,7 @@
 | 
				
			|||||||
    "all": "Alle",
 | 
					    "all": "Alle",
 | 
				
			||||||
    "all-associated-donations-will-get-deleted-as-well": "Alle Sponsorings dieser Sponsor:in werden ebenfalls gelöscht",
 | 
					    "all-associated-donations-will-get-deleted-as-well": "Alle Sponsorings dieser Sponsor:in werden ebenfalls gelöscht",
 | 
				
			||||||
    "all-associated-runners-will-be-deleted-too": "Alle zugehörigen Läufer:innen werden auch gelöscht!",
 | 
					    "all-associated-runners-will-be-deleted-too": "Alle zugehörigen Läufer:innen werden auch gelöscht!",
 | 
				
			||||||
 | 
					    "all-associated-scans-will-get-deleted-as-well": "Alle Scans dieser Station werden ebenfalls gelöscht",
 | 
				
			||||||
    "all-associated-teams-and-runners-will-be-deleted-too": "Alle assoziierten Teams und Läufer:innen werden auch gelöscht!",
 | 
					    "all-associated-teams-and-runners-will-be-deleted-too": "Alle assoziierten Teams und Läufer:innen werden auch gelöscht!",
 | 
				
			||||||
    "already-paid": "Bereits bezahlt",
 | 
					    "already-paid": "Bereits bezahlt",
 | 
				
			||||||
    "amount": "Anzahl",
 | 
					    "amount": "Anzahl",
 | 
				
			||||||
@@ -49,6 +50,7 @@
 | 
				
			|||||||
    "cancel-keep-donor": "Abbrechen, Sponsor:in behalten",
 | 
					    "cancel-keep-donor": "Abbrechen, Sponsor:in behalten",
 | 
				
			||||||
    "cancel-keep-my-profile": "Abbrechen, mein Profil behalten",
 | 
					    "cancel-keep-my-profile": "Abbrechen, mein Profil behalten",
 | 
				
			||||||
    "cancel-keep-organization": "Abbrechen und Organisation bearbeiten",
 | 
					    "cancel-keep-organization": "Abbrechen und Organisation bearbeiten",
 | 
				
			||||||
 | 
					    "cancel-keep-station": "Abbrechen und Station behalten",
 | 
				
			||||||
    "cancel-keep-statsclient": "Abbrechen und Statsclient behalten",
 | 
					    "cancel-keep-statsclient": "Abbrechen und Statsclient behalten",
 | 
				
			||||||
    "cancel-keep-team": "Abbrechen, Team behalten",
 | 
					    "cancel-keep-team": "Abbrechen, Team behalten",
 | 
				
			||||||
    "cannot-reset-your-password-directly": "Schade. \nWir können das Passwort leider nicht direkt zurücksetzen.\nBitte sende uns eine Mail in der du deine Identität bestätigst.",
 | 
					    "cannot-reset-your-password-directly": "Schade. \nWir können das Passwort leider nicht direkt zurücksetzen.\nBitte sende uns eine Mail in der du deine Identität bestätigst.",
 | 
				
			||||||
@@ -72,6 +74,7 @@
 | 
				
			|||||||
    "confirm-delete-donor-with-all-donations": "Bestätigen, Sponsor:in mit allen Sponsorings löschen",
 | 
					    "confirm-delete-donor-with-all-donations": "Bestätigen, Sponsor:in mit allen Sponsorings löschen",
 | 
				
			||||||
    "confirm-delete-my-user-profile": "Bestätigung, mein Benutzerprofil löschen",
 | 
					    "confirm-delete-my-user-profile": "Bestätigung, mein Benutzerprofil löschen",
 | 
				
			||||||
    "confirm-delete-organization-and-associated-teams-runners": "Bestätugung, lösche die Organisation und alle zugehörigen Teams und Läufer:innen.",
 | 
					    "confirm-delete-organization-and-associated-teams-runners": "Bestätugung, lösche die Organisation und alle zugehörigen Teams und Läufer:innen.",
 | 
				
			||||||
 | 
					    "confirm-delete-station-with-all-scans": "Löschen der Scannerstation mit allen Scans bestätigen",
 | 
				
			||||||
    "confirm-delete-statsclient": "Bestätigung, Statsclient löschen",
 | 
					    "confirm-delete-statsclient": "Bestätigung, Statsclient löschen",
 | 
				
			||||||
    "confirm-delete-team-and-associated-runners": "Bestätigung, lösche das Team mitsamt seinen Läufer:innen.",
 | 
					    "confirm-delete-team-and-associated-runners": "Bestätigung, lösche das Team mitsamt seinen Läufer:innen.",
 | 
				
			||||||
    "confirm-deletion": "Löschung Bestätigen",
 | 
					    "confirm-deletion": "Löschung Bestätigen",
 | 
				
			||||||
@@ -390,6 +393,7 @@
 | 
				
			|||||||
    "something-about-the-group": "Infos zur Gruppe",
 | 
					    "something-about-the-group": "Infos zur Gruppe",
 | 
				
			||||||
    "sponsoring-quittungs-liste_herunterladen": "Sponsoring-Quittungs-Liste herunterladen",
 | 
					    "sponsoring-quittungs-liste_herunterladen": "Sponsoring-Quittungs-Liste herunterladen",
 | 
				
			||||||
    "sponsorings": "Sponsoringerklaerungen",
 | 
					    "sponsorings": "Sponsoringerklaerungen",
 | 
				
			||||||
 | 
					    "station-deleted": "Scannerstation gelöscht",
 | 
				
			||||||
    "stats-are-being-loaded": "Die Statistiken werden geladen...",
 | 
					    "stats-are-being-loaded": "Die Statistiken werden geladen...",
 | 
				
			||||||
    "statsclient-deleted": "Statsclient wurde gelöscht",
 | 
					    "statsclient-deleted": "Statsclient wurde gelöscht",
 | 
				
			||||||
    "statsclient-is-being-added": "Statsclient wird angelegt...",
 | 
					    "statsclient-is-being-added": "Statsclient wird angelegt...",
 | 
				
			||||||
@@ -424,6 +428,7 @@
 | 
				
			|||||||
    "this-card-is": "Diese Karte ist",
 | 
					    "this-card-is": "Diese Karte ist",
 | 
				
			||||||
    "this-might-take-a-moment": "Das könnte einen kleinen Moment dauern",
 | 
					    "this-might-take-a-moment": "Das könnte einen kleinen Moment dauern",
 | 
				
			||||||
    "this-scanstation-is": "Diese Station ist",
 | 
					    "this-scanstation-is": "Diese Station ist",
 | 
				
			||||||
 | 
					    "timestamp": "Timestamp",
 | 
				
			||||||
    "token": "Token",
 | 
					    "token": "Token",
 | 
				
			||||||
    "total-distance": "gelaufene Strecke",
 | 
					    "total-distance": "gelaufene Strecke",
 | 
				
			||||||
    "total-donation-amount": "Gesamtbetrag",
 | 
					    "total-donation-amount": "Gesamtbetrag",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -33,6 +33,7 @@
 | 
				
			|||||||
    "all": "all",
 | 
					    "all": "all",
 | 
				
			||||||
    "all-associated-donations-will-get-deleted-as-well": "All associated donations will get deleted as well",
 | 
					    "all-associated-donations-will-get-deleted-as-well": "All associated donations will get deleted as well",
 | 
				
			||||||
    "all-associated-runners-will-be-deleted-too": "All associated runners will be deleted too!",
 | 
					    "all-associated-runners-will-be-deleted-too": "All associated runners will be deleted too!",
 | 
				
			||||||
 | 
					    "all-associated-scans-will-get-deleted-as-well": "All associated scans will get deleted as well",
 | 
				
			||||||
    "all-associated-teams-and-runners-will-be-deleted-too": "All associated teams and runners will be deleted too!",
 | 
					    "all-associated-teams-and-runners-will-be-deleted-too": "All associated teams and runners will be deleted too!",
 | 
				
			||||||
    "already-paid": "Already paid",
 | 
					    "already-paid": "Already paid",
 | 
				
			||||||
    "amount": "Amount",
 | 
					    "amount": "Amount",
 | 
				
			||||||
@@ -49,6 +50,7 @@
 | 
				
			|||||||
    "cancel-keep-donor": "Cancel, keep donor",
 | 
					    "cancel-keep-donor": "Cancel, keep donor",
 | 
				
			||||||
    "cancel-keep-my-profile": "Cancel, keep my profile",
 | 
					    "cancel-keep-my-profile": "Cancel, keep my profile",
 | 
				
			||||||
    "cancel-keep-organization": "Cancel, keep organization",
 | 
					    "cancel-keep-organization": "Cancel, keep organization",
 | 
				
			||||||
 | 
					    "cancel-keep-station": "Cancel, keep station",
 | 
				
			||||||
    "cancel-keep-statsclient": "Cancel and keep statsclient",
 | 
					    "cancel-keep-statsclient": "Cancel and keep statsclient",
 | 
				
			||||||
    "cancel-keep-team": "Cancel, keep team",
 | 
					    "cancel-keep-team": "Cancel, keep team",
 | 
				
			||||||
    "cannot-reset-your-password-directly": "Bummer. We unfortunately cannot reset your password directly. Please send us a mail and confirm your identity",
 | 
					    "cannot-reset-your-password-directly": "Bummer. We unfortunately cannot reset your password directly. Please send us a mail and confirm your identity",
 | 
				
			||||||
@@ -72,6 +74,7 @@
 | 
				
			|||||||
    "confirm-delete-donor-with-all-donations": "Confirm, delete donor with all donations",
 | 
					    "confirm-delete-donor-with-all-donations": "Confirm, delete donor with all donations",
 | 
				
			||||||
    "confirm-delete-my-user-profile": "Confirm, delete my user profile",
 | 
					    "confirm-delete-my-user-profile": "Confirm, delete my user profile",
 | 
				
			||||||
    "confirm-delete-organization-and-associated-teams-runners": "Confirm, delete organization and associated teams+runners.",
 | 
					    "confirm-delete-organization-and-associated-teams-runners": "Confirm, delete organization and associated teams+runners.",
 | 
				
			||||||
 | 
					    "confirm-delete-station-with-all-scans": "Confirm deletion of station with all scans",
 | 
				
			||||||
    "confirm-delete-statsclient": "Confirm, delete statsclient",
 | 
					    "confirm-delete-statsclient": "Confirm, delete statsclient",
 | 
				
			||||||
    "confirm-delete-team-and-associated-runners": "Confirm, delete team and associated runners.",
 | 
					    "confirm-delete-team-and-associated-runners": "Confirm, delete team and associated runners.",
 | 
				
			||||||
    "confirm-deletion": "Confirm Deletion",
 | 
					    "confirm-deletion": "Confirm Deletion",
 | 
				
			||||||
@@ -390,6 +393,7 @@
 | 
				
			|||||||
    "something-about-the-group": "Something about the group...",
 | 
					    "something-about-the-group": "Something about the group...",
 | 
				
			||||||
    "sponsoring-quittungs-liste_herunterladen": "Download donor receipt list",
 | 
					    "sponsoring-quittungs-liste_herunterladen": "Download donor receipt list",
 | 
				
			||||||
    "sponsorings": "Sponsorings",
 | 
					    "sponsorings": "Sponsorings",
 | 
				
			||||||
 | 
					    "station-deleted": "station deleted",
 | 
				
			||||||
    "stats-are-being-loaded": "stats are being loaded...",
 | 
					    "stats-are-being-loaded": "stats are being loaded...",
 | 
				
			||||||
    "statsclient-deleted": "Deleted statsclient",
 | 
					    "statsclient-deleted": "Deleted statsclient",
 | 
				
			||||||
    "statsclient-is-being-added": "Statsclient is being added...",
 | 
					    "statsclient-is-being-added": "Statsclient is being added...",
 | 
				
			||||||
@@ -424,6 +428,7 @@
 | 
				
			|||||||
    "this-card-is": "This card is",
 | 
					    "this-card-is": "This card is",
 | 
				
			||||||
    "this-might-take-a-moment": "This might take a moment 👀",
 | 
					    "this-might-take-a-moment": "This might take a moment 👀",
 | 
				
			||||||
    "this-scanstation-is": "This scanstation is",
 | 
					    "this-scanstation-is": "This scanstation is",
 | 
				
			||||||
 | 
					    "timestamp": "timestamp",
 | 
				
			||||||
    "token": "Token",
 | 
					    "token": "Token",
 | 
				
			||||||
    "total-distance": "total distance",
 | 
					    "total-distance": "total distance",
 | 
				
			||||||
    "total-donation-amount": "total donation amount",
 | 
					    "total-donation-amount": "total donation amount",
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user