diff --git a/src/components/auth/Login.svelte b/src/components/auth/Login.svelte
index 6be88339..54ccffbc 100644
--- a/src/components/auth/Login.svelte
+++ b/src/components/auth/Login.svelte
@@ -76,7 +76,7 @@
// last login was not processed yet
} else {
Toastify({
- text: "chill...",
+ text: $_('please-wait-a-moment-your-login-is-still-being-processed'),
duration: 1500,
backgroundColor:
"linear-gradient(90deg, hsla(281, 37%, 45%, 1) 0%, hsla(1, 62%, 48%, 1) 100%)",
diff --git a/src/components/contacts/AddContactModal.svelte b/src/components/contacts/AddContactModal.svelte
index d24dec4e..3b4bb2ad 100644
--- a/src/components/contacts/AddContactModal.svelte
+++ b/src/components/contacts/AddContactModal.svelte
@@ -86,7 +86,7 @@
if (processed_last_submit === true) {
processed_last_submit = false;
const toast = Toastify({
- text: "Contact is being added...",
+ text: $_('contact-is-being-added'),
duration: -1,
}).showToast();
let address = {};
@@ -123,7 +123,7 @@
modal_open = false;
//
Toastify({
- text: "Contact added",
+ text: $_('contact-added'),
duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
diff --git a/src/components/donations/AddDonationModal.svelte b/src/components/donations/AddDonationModal.svelte
index 63e781e3..0c06b184 100644
--- a/src/components/donations/AddDonationModal.svelte
+++ b/src/components/donations/AddDonationModal.svelte
@@ -9,6 +9,7 @@
} from "@odit/lfk-client-js";
import Select from "svelte-select";
import Toastify from "toastify-js";
+import { is_promise } from "svelte/internal";
export let modal_open;
export let current_donations;
const getDonorLabel = (option) =>
@@ -24,6 +25,7 @@
$: donors = [];
$: runners = [];
$: is_fixed = false;
+ $: is_paid = false;
DonorService.donorControllerGetAll().then((val) => {
donors = val.map((r) => {
return { label: getDonorLabel(r), value: r };
@@ -57,14 +59,18 @@
let amount_cent = Math.floor(amount_input * 100);
processed_last_submit = false;
const toast = Toastify({
- text: "adding donation",
+ text: $_('adding-donation'),
duration: -1,
}).showToast();
if (is_fixed) {
let postdata = {
donor,
amount: amount_cent,
+ paidAmount: 0
};
+ if(is_paid){
+ postdata.paidAmount = amount_cent;
+ }
DonationService.donationControllerPostFixed(postdata)
.then((result) => {
donor = donors[0].id || 0;
@@ -73,7 +79,7 @@
modal_open = false;
//
Toastify({
- text: "donation_added",
+ text: $_('donation_added'),
duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
@@ -102,7 +108,7 @@
modal_open = false;
//
Toastify({
- text: "donation_added",
+ text: $_('donation_added'),
duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
@@ -123,7 +129,7 @@
@@ -195,7 +201,7 @@
class="ml-2 text-base"
class:text-gray-300={is_fixed}>{$_('distance-donation')}
{/if}
+ {#if is_fixed}
+
+
+
+
+
+
+ {#if is_paid}
+ {$_('paid')}
+ {:else}
+ {$_('open')}
+ {/if}
+
+
+
+ {/if}
diff --git a/src/components/donations/AddDonationPaymentModal.svelte b/src/components/donations/AddDonationPaymentModal.svelte
new file mode 100644
index 00000000..45f952e9
--- /dev/null
+++ b/src/components/donations/AddDonationPaymentModal.svelte
@@ -0,0 +1,202 @@
+
+
+{#if payment_modal_open}
+ {
+ payment_modal_open = false;
+ }}>
+
+
+
+
+
+
+
+
+
+ {$_('enter-payment')}
+
+
+
+ {$_('you-can-enter-the-donations-paid-amount-manually-or-use-the-max-button-to-use-the-donations-exact-amount')}
+
+
+
+
+
+
+
+
+ €
+
+ {#if !is_paid_amount_valid}
+
+ {$_('payment-amount-must-be-greater-than-0-00eur')}
+
+ {/if}
+
+
+
+
+
+
+
+
+
+
+
+
+{/if}
diff --git a/src/components/donations/DonationDetail.svelte b/src/components/donations/DonationDetail.svelte
index b481a6fa..7747f5ec 100644
--- a/src/components/donations/DonationDetail.svelte
+++ b/src/components/donations/DonationDetail.svelte
@@ -20,6 +20,8 @@
$: current_runners = [];
$: amount_input = 0;
$: is_amount_valid = amount_input > 0;
+ $: paid_amount_input = 0;
+ $: is_paid_amount_valid = paid_amount_input > 0;
$: is_everything_set =
editable.donor != null &&
((original_data.responseType == "DISTANCEDONATION" &&
@@ -30,15 +32,17 @@
(original_data.responseType == "DISTANCEDONATION" &&
!(Math.floor(amount_input * 100) === original_data.amountPerDistance)) ||
(original_data.responseType !== "DISTANCEDONATION" &&
- !(Math.floor(amount_input * 100) === original_data.amount));
+ !(Math.floor(amount_input * 100) === original_data.amount)) ||
+ !(Math.floor(paid_amount_input * 100) === original_data.paidAmount);
$: save_enabled = changes_performed && is_amount_valid && is_everything_set;
const promise = DonationService.donationControllerGetOne(
params.donationid
).then((data) => {
data_loaded = true;
- original_data = Object.assign(original_data, data);
- editable = Object.assign(editable, original_data);
+ original_data = Object.assign({}, data);
+ editable = Object.assign({}, original_data);
+ paid_amount_input = data.paidAmount / 100;
if (data.responseType == "DISTANCEDONATION") {
amount_input = data.amountPerDistance / 100;
RunnerService.runnerControllerGetAll().then((val) => {
@@ -66,10 +70,11 @@
function submit() {
if (data_loaded === true && save_enabled) {
Toastify({
- text: "Donation is being updated",
+ text: $_('updating-donation'),
duration: 2500,
}).showToast();
let postdata = {};
+ editable.paidAmount = paid_amount_input*100;
if (original_data.responseType === "DISTANCEDONATION") {
editable.amountPerDistance = Math.floor(amount_input * 100);
postdata = Object.assign(postdata, editable);
@@ -83,7 +88,7 @@
Object.assign(original_data, editable);
original_data = original_data;
Toastify({
- text: "updated donation",
+ text: $_('donation-updated'),
duration: 2500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
@@ -98,7 +103,7 @@
Object.assign(original_data, editable);
original_data = original_data;
Toastify({
- text: "updated donation",
+ text: $_('donation-updated'),
duration: 2500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
@@ -112,7 +117,7 @@
DonationService.donationControllerRemove(original_data.id, false)
.then((resp) => {
Toastify({
- text: "Donation delete",
+ text: $_('donation-deleted'),
duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
@@ -219,7 +224,24 @@
{(editable.amount / 100)
.toFixed(2)
.toLocaleString('de-DE', { valute: 'EUR' })}€
+ |
+ {$_('paid-amount')}:
+ {(editable.paidAmount / 100)
+ .toFixed(2)
+ .toLocaleString('de-DE', { valute: 'EUR' })}€
+ |
+ {$_('status')}:
+ {#if editable.status =="PAID"}
+ {$_('paid')}
+ {:else}
+ {$_('open')}
+ {/if}
+
{#if original_data.responseType == 'DISTANCEDONATION'}
@@ -280,6 +302,39 @@
{/if}
+
+
+
+
+
+ €
+
+ {#if !is_paid_amount_valid}
+
+ {$_('payment-amount-must-be-greater-than-0-00eur')}
+
+ {/if}
+
{:catch error}
diff --git a/src/components/donations/DonationsOverview.svelte b/src/components/donations/DonationsOverview.svelte
index c417614b..8db4ea4d 100644
--- a/src/components/donations/DonationsOverview.svelte
+++ b/src/components/donations/DonationsOverview.svelte
@@ -4,9 +4,14 @@
import store from "../../store";
import Toastify from "toastify-js";
import DonationsEmptyState from "./DonationsEmptyState.svelte";
+ import AddDonationPaymentModal from "./AddDonationPaymentModal.svelte";
$: searchvalue = "";
$: active_deletes = [];
export let current_donations = [];
+ export let payment_modal_open = false;
+ export let editable = {};
+ export let original_data = {};
+ export let paid_amount_input = 0;
const donations_promise = DonationService.donationControllerGetAll().then(
(val) => {
current_donations = val;
@@ -18,8 +23,15 @@
}
return id.toString() === searchvalue;
}
+ function open_payment_modal(donation) {
+ editable = Object.assign({}, donation);
+ original_data = Object.assign({}, donation);
+ paid_amount_input = (donation.paidAmount/100).toFixed(2);
+ payment_modal_open = true;
+ }
+
{#if store.state.jwtinfo.userdetails.permissions.includes('DONATION:GET')}
{#await donations_promise}
{$_('donation-amount')}
+
+ {$_('paid-amount')}
+ |
+
+ {$_('status')}
+ |
{$_('action')}
|
@@ -132,6 +154,22 @@
.toLocaleString('de-DE', { valute: 'EUR' })}€
+
+
+ {(donation.paidAmount / 100)
+ .toFixed(2)
+ .toLocaleString('de-DE', { valute: 'EUR' })}€
+
+ |
+
+ {#if donation.status =="PAID"}
+ {$_('paid')}
+ {:else}
+ {$_('open')}
+ {/if}
+ |
{#if active_deletes[donation.id] === true}
@@ -149,7 +187,7 @@
(obj) => obj.id !== donation.id
);
Toastify({
- text: 'Donation deleted',
+ text: $_('donation-deleted'),
duration: 500,
backgroundColor:
'linear-gradient(to right, #00b09b, #96c93d)',
@@ -163,6 +201,9 @@
{:else}
|
+
{$_('details')}
diff --git a/src/components/donors/ConfirmDonorDeletion.svelte b/src/components/donors/ConfirmDonorDeletion.svelte
index 01100045..28799797 100644
--- a/src/components/donors/ConfirmDonorDeletion.svelte
+++ b/src/components/donors/ConfirmDonorDeletion.svelte
@@ -19,7 +19,7 @@
)
.then((resp) => {
Toastify({
- text: "Donor deleted",
+ text: $_('donor-deleted'),
duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
diff --git a/src/components/donors/DonorDetail.svelte b/src/components/donors/DonorDetail.svelte
index bb88f84a..222bb46d 100644
--- a/src/components/donors/DonorDetail.svelte
+++ b/src/components/donors/DonorDetail.svelte
@@ -193,6 +193,12 @@
{(editable.donationAmount / 100)
.toFixed(2)
.toLocaleString('de-DE', { valute: 'EUR' })}€
+ |
+ {$_('total-paid-amount')}:
+ {(editable.paidDonationAmount / 100)
+ .toFixed(2)
+ .toLocaleString('de-DE', { valute: 'EUR' })}€
{$_('donations')}:
{#if current_donations.filter((d) => d.donor.id == editable.id).length > 0}
diff --git a/src/components/donors/DonorsOverview.svelte b/src/components/donors/DonorsOverview.svelte
index d167554f..e7a1c45a 100644
--- a/src/components/donors/DonorsOverview.svelte
+++ b/src/components/donors/DonorsOverview.svelte
@@ -77,6 +77,11 @@
class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">
{$_('total-donation-amount')}
+ |
+ {$_('total-paid-amount')}
+ |
{$_('action')}
|
@@ -145,6 +150,11 @@
.toFixed(2)
.toLocaleString('de-DE', { valute: 'EUR' })}€
+
+ {(donor.paidDonationAmount / 100)
+ .toFixed(2)
+ .toLocaleString('de-DE', { valute: 'EUR' })}€
+ |
{#if active_deletes[donor.id] === true}
diff --git a/src/components/orgs/ConfirmOrgDeletion.svelte b/src/components/orgs/ConfirmOrgDeletion.svelte
index 7fb936d8..449f0568 100644
--- a/src/components/orgs/ConfirmOrgDeletion.svelte
+++ b/src/components/orgs/ConfirmOrgDeletion.svelte
@@ -19,7 +19,7 @@
)
.then((resp) => {
Toastify({
- text: "Organization deleted",
+ text: $_('organization-deleted'),
duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
diff --git a/src/components/runners/ImportRunnerModal.svelte b/src/components/runners/ImportRunnerModal.svelte
index 37d450e7..c1d4ab8d 100644
--- a/src/components/runners/ImportRunnerModal.svelte
+++ b/src/components/runners/ImportRunnerModal.svelte
@@ -202,7 +202,7 @@
toast.hideToast();
recent_processed = true;
Toastify({
- text: "Import finished",
+ text: $_('import-finished'),
duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
diff --git a/src/components/settings/ConfirmProfileDeletion.svelte b/src/components/settings/ConfirmProfileDeletion.svelte
index 10e79cd6..db0df385 100644
--- a/src/components/settings/ConfirmProfileDeletion.svelte
+++ b/src/components/settings/ConfirmProfileDeletion.svelte
@@ -17,7 +17,7 @@
MeService.meControllerRemove(true)
.then((resp) => {
Toastify({
- text: "Profile deleted!",
+ text: $_('profile-deleted'),
duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
diff --git a/src/components/teams/AddTeamModal.svelte b/src/components/teams/AddTeamModal.svelte
index 06ba6a49..8795158e 100644
--- a/src/components/teams/AddTeamModal.svelte
+++ b/src/components/teams/AddTeamModal.svelte
@@ -43,7 +43,7 @@
if (processed_last_submit === true) {
processed_last_submit = false;
const toast = Toastify({
- text: "Team is being added...",
+ text: $_('team-is-being-added'),
duration: -1,
}).showToast();
RunnerTeamService.runnerTeamControllerPost({
@@ -55,7 +55,7 @@
modal_open = false;
//
Toastify({
- text: "Team added",
+ text: $_('team-added'),
duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
diff --git a/src/components/teams/ConfirmTeamDeletion.svelte b/src/components/teams/ConfirmTeamDeletion.svelte
index bfafe8aa..5f9ee92c 100644
--- a/src/components/teams/ConfirmTeamDeletion.svelte
+++ b/src/components/teams/ConfirmTeamDeletion.svelte
@@ -16,7 +16,7 @@
RunnerTeamService.runnerTeamControllerRemove(delete_team.id, true)
.then((resp) => {
Toastify({
- text: "Team deleted",
+ text: $_('team-deleted'),
duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
diff --git a/src/components/teams/TeamDetail.svelte b/src/components/teams/TeamDetail.svelte
index 2be431bb..baad6076 100644
--- a/src/components/teams/TeamDetail.svelte
+++ b/src/components/teams/TeamDetail.svelte
@@ -67,7 +67,7 @@
RunnerTeamService.runnerTeamControllerRemove(original.id, false)
.then((resp) => {
Toastify({
- text: "Organization deleted",
+ text: $_('team-deleted'),
duration: 500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
@@ -81,7 +81,7 @@
function submit() {
if (data_loaded === true && save_enabled) {
Toastify({
- text: "updating team",
+ text: $_('updating-team'),
duration: 2500,
}).showToast();
let postdata = teamdata;
@@ -92,7 +92,7 @@
Object.assign(original, teamdata);
original = original;
Toastify({
- text: "updated team",
+ text: $_('updated-team'),
duration: 2500,
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
}).showToast();
diff --git a/src/components/tracks/Tracks.svelte b/src/components/tracks/Tracks.svelte
index f3d586f0..4dcabb1c 100644
--- a/src/components/tracks/Tracks.svelte
+++ b/src/components/tracks/Tracks.svelte
@@ -34,7 +34,7 @@
`[data-id="triggered_table_actions_${trackid}"]`
).parentNode.parentNode.parentNode;
Toastify({
- text: "Track is being updated...",
+ text: $_('track-is-being-updated'),
duration: 500,
}).showToast();
TrackService.trackControllerPut(trackid, {
@@ -45,7 +45,7 @@
})
.then((r) => {
Toastify({
- text: "Track was updated!",
+ text: $_('track-was-updated'),
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
duration: 1000,
}).showToast();
diff --git a/src/components/users/UserPermissions.svelte b/src/components/users/UserPermissions.svelte
index 92071b12..8265d880 100644
--- a/src/components/users/UserPermissions.svelte
+++ b/src/components/users/UserPermissions.svelte
@@ -27,7 +27,7 @@
});
function submit() {
Toastify({
- text: "updating permissions...",
+ text: $_('updating-permissions'),
duration: 2500,
}).showToast();
to_delete.forEach((d) => {
diff --git a/src/locales/de.json b/src/locales/de.json
index dc21f32c..5269b15d 100644
--- a/src/locales/de.json
+++ b/src/locales/de.json
@@ -22,6 +22,7 @@
"add-your-fist-donation": "Erstelle dein erstes Sponsoring",
"add-your-fist-scan": "Füge deinen ersten Scan hinzu",
"adding-card": "Karte wird erstellt",
+ "adding-donation": "Sponsoring wird erstellt...",
"adding-scan": "Scan wird hinzugefügt",
"address": "Adresse",
"address-is-required": "Du musst eine Adresse angeben",
@@ -30,6 +31,7 @@
"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-teams-and-runners-will-be-deleted-too": "Alle assoziierten Teams und Läufer:innen werden auch gelöscht!",
+ "already-paid": "Bereits bezahlt",
"amount": "Anzahl",
"amount-per-kilometer": "Betrag pro Kilometer",
"apartment-suite-etc": "Apartment, Wohnung, etc.",
@@ -68,8 +70,10 @@
"confirm-deletion": "Löschung Bestätigen",
"confirm-the-new-password": "Neues Passwort bestätigen",
"contact": "Kontakt",
+ "contact-added": "Kontakt wurde hinzugefügt",
"contact-deleted": "Kontakt gelöscht",
"contact-information": "Kontaktinformation",
+ "contact-is-being-added": "Kontakt wird erstellt...",
"contact-is-being-updated": "Kontakt wird aktualisiert ...",
"contact-is-not-a-member-in-any-group": "Kontakt gehört zu keiner Gruppe",
"contacts": "Kontakte",
@@ -129,7 +133,7 @@
},
"delete": "Löschen",
"delete-contact": "Kontakt löschen",
- "delete-donation": "Sponsporing löschen",
+ "delete-donation": "Sponsoring löschen",
"delete-donor": "Sponsor:in löschen",
"delete-group": "Gruppe löschen",
"delete-organization": "Organisation löschen",
@@ -157,6 +161,9 @@
"documentation": "Dokumentation",
"donation-amount": "Sponsoringbetrag",
"donation-amount-must-be-greater-that-0-00eur": "Der Sponsoringbetrag muss größer als 0.00€ sein.",
+ "donation-deleted": "Sponsoring gelöscht",
+ "donation-updated": "Sponsoring wurde aktualisiert",
+ "donation_added": "Sponsoring hinzugefügt",
"donations": "Sponsorings",
"donor": "Sponsor:in",
"donor-added": "Sponsor:in hinzugefügt",
@@ -176,6 +183,7 @@
"enabled": "aktiviert",
"enabled_large": "Aktiviert",
"english": "Englisch",
+ "enter-payment": "Zahlung eingeben",
"error-during-import": "Fehler beim Importieren",
"error-whyile-copying-to-clipboard": "Fehler beim Kopieren in die Zwischenablage",
"error_on_login": "😢Fehler beim Login",
@@ -269,6 +277,7 @@
"no-runners-found": "Keine Läufer:innen gefunden",
"no-tracks-added-yet": "Es wurden noch keine Tracks erstellt.",
"non-blanko": "Keine/Blankokarte",
+ "open": "OFFEN",
"organization": "Organisation",
"organization-added": "Organisation hinzugefügt",
"organization-deleted": "Organisation gelöscht",
@@ -279,6 +288,8 @@
"organizations-are-being-loaded": "Organisationen werden geladen ...",
"orgs": "Organisationen",
"oss_credit_description": "Wir verwenden eine Menge Open Source-Software bei diesen Projekten und möchten uns bei den folgenden Projekten und Mitwirkenden bedanken, die dazu beitragen, Open Source großartig zu machen!",
+ "paid": "BEZAHLT",
+ "paid-amount": "Gezahlter Betrag",
"password": "Passwort",
"password-changed": "Passwort wurde aktualisiert!",
"password-is-required": "Passwort muss angegeben werden",
@@ -287,6 +298,7 @@
"password-reset-mail-sent": "Passwort-Reset Mail wurde an \"{usersEmail}\" geschickt.",
"password-reset-successful": "Passwort erfolgreich zurückgesetzt!",
"passwords-dont-match": "Die Passwörter stimmen nicht überein!",
+ "payment-amount-must-be-greater-than-0-00eur": "Der Zahlungsbetrag muss größer als 0.00€ sein!",
"pdf-generation-failed": "PDF Generierung fehlgeschlagen!",
"pdf-successfully-generated": "PDF wurde erfolgreich generiert!",
"pdfs-successfully-generated": "Alle PDFs wurden generiert!",
@@ -309,9 +321,11 @@
"please-provide-the-required-information-to-add-a-new-user": "Bitte gebe alle nötigen Informationen an, im die neue Benutzer:in zu erstellen.",
"please-provide-the-required-information-to-create-a-new-scanstation": "Bitte gebe alle für eine Scannerstation notwendigen Informationen an",
"please-request-a-new-reset-mail": "Bitte eine neue Passwortreset-Mail anfordern...",
+ "please-wait-a-moment-your-login-is-still-being-processed": "Bitte warte einen Moment, deine Anmeldung wird verarbeitet",
"privacy": "Datenschutz",
"privacy-loading": "Datenschutzerklärung lädt...",
"profile": "Profil",
+ "profile-deleted": "Profil gelöscht!",
"profile-picture": "Profilbild",
"profile-updated": "Profil wurde aktualisiert!",
"read-license": "Lizenz-Text lesen",
@@ -362,7 +376,10 @@
"stuff-that-could-harm-your-profile": "Einstellungen, die deinem Profil nachhaltig schaden können",
"successful-password-reset": "Passwort erfolgreich zurückgesetzt!",
"team": "Team",
+ "team-added": "Team wurde hinzugefügt",
+ "team-deleted": "Team gelöscht",
"team-detail-is-being-loaded": "Team wird geladen...",
+ "team-is-being-added": "Team wird erstellt...",
"team-name": "Teamname",
"team-name-is-required": "Teamname ist erforderlich",
"teams": "Teams",
@@ -387,28 +404,35 @@
"total-distance": "gelaufene Strecke",
"total-donation-amount": "Gesamtbetrag",
"total-donations": "Spendensumme",
+ "total-paid-amount": "Gezahlter Gesamtbetrag",
"total-scans": "gesamte Scans",
"total_donation_amount_in_eur": "Gesamtbetrag in €",
"track": "Track",
"track-added": "Track hinzugefügt",
"track-data-is-being-loaded": "Trackdaten werden geladen",
"track-is-being-added": "Track wird hinzugefügt...",
+ "track-is-being-updated": "Track wird aktualisiert...",
"track-length-in-m": "Tracklänge (in Metern)",
"track-length-must-be-greater-than-0": "Die Länge muss größer als 0 (Meter) sein",
"track-name": "Trackname",
"track-name-must-not-be-empty": "Der Name muss angegeben werden",
+ "track-was-updated": "Track wurde aktualisiert",
"tracks": "Tracks",
+ "unpaid": "Offen",
"update-card": "Karte aktualisieren",
"update-password": "Passwort ändern",
"updated-contact": "Kontakt aktualisiert!",
"updated-donor": "Sponsor:in wurde aktualisiert",
"updated-organization": "Organisation wurde aktualisiert",
"updated-scan": "Scan wurde aktualisiert",
+ "updated-team": "Team wurde aktualisiert",
"updateing-group": "Gruppe wird aktualisiert...",
"updating-card": "Karte wird aktualisiert",
+ "updating-donation": "Sponsoring wird aktualisiert",
"updating-organization": "Organisation wird aktualisiert",
"updating-permissions": "Berechtigungen werden aktualisiert...",
"updating-runner": "Läufer:in wird aktualisiert.",
+ "updating-team": "Team wird aktualisiert",
"updating-user": "Benutzer:in wird aktualisiert...",
"updating-your-profile": "Profil wird aktualisiert...",
"user-added": "Benutzer hinzugefügt",
@@ -426,6 +450,7 @@
"welcome_wavinghand": "Willkommen 👋",
"yes-i-copied-the-token": "Ja, ich habe den Token kopiert",
"you-are-going-to-loose-all-permissions-and-access-to-the-runner-system": "Du wirst all deine Berechtigungen und den Zugriff aufs Läufersystem verlieren!",
+ "you-can-enter-the-donations-paid-amount-manually-or-use-the-max-button-to-use-the-donations-exact-amount": "Du kannst den Betrag der Zahlung entweder manuell eingeben oder über den MAX Button auf den Spendenbetrag setzen",
"you-can-now-use-your-new-password-to-log-in-to-your-account": "Du kannst dich jetzt mit deinem neuen Passwort anmelden! 🎉",
"you-can-provide-a-runner-but-you-dont-have-to": "Du kannst eine Läufer:in angeben, musst aber nicht.",
"you-dont-have-any-scanstations-yet": "Es gibt noch keine Scannerstationen",
diff --git a/src/locales/en.json b/src/locales/en.json
index 79922067..b705edd8 100644
--- a/src/locales/en.json
+++ b/src/locales/en.json
@@ -7,6 +7,7 @@
"add-card": "Add Card",
"add-donation": "Add donation",
"add-donor": "Add donor",
+ "add-or-update-a-payment": "Add or update a payment",
"add-scan": "Add scan",
"add-the-first-scanstation": "Add your first scanstation.",
"add-user-group": "Add User Group",
@@ -22,6 +23,7 @@
"add-your-fist-donation": "Add your fist donation",
"add-your-fist-scan": "Add your fist scan",
"adding-card": "Adding Card",
+ "adding-donation": "Adding donation...",
"adding-scan": "Adding Scan",
"address": "Address",
"address-is-required": "Address is required",
@@ -30,6 +32,7 @@
"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-teams-and-runners-will-be-deleted-too": "All associated teams and runners will be deleted too!",
+ "already-paid": "Already paid",
"amount": "Amount",
"amount-per-kilometer": "Amount per kilometer",
"apartment-suite-etc": "Apartment, suite, etc.",
@@ -68,8 +71,10 @@
"confirm-deletion": "Confirm Deletion",
"confirm-the-new-password": "Confirm the new password",
"contact": "Contact",
+ "contact-added": "Contact added",
"contact-deleted": "Contact deleted",
"contact-information": "Contact Information",
+ "contact-is-being-added": "Contact is being added...",
"contact-is-being-updated": "Contact is being updated...",
"contact-is-not-a-member-in-any-group": "Contact is not a member in any group",
"contacts": "Contacts",
@@ -157,6 +162,9 @@
"documentation": "Documentation",
"donation-amount": "Donation amount",
"donation-amount-must-be-greater-that-0-00eur": "Donation amount must be greater that 0.00€",
+ "donation-deleted": "Donation deleted",
+ "donation-updated": "Donation updated",
+ "donation_added": "Donation_added",
"donations": "Donations",
"donor": "Donor",
"donor-added": "Donor added",
@@ -176,6 +184,7 @@
"enabled": "enabled",
"enabled_large": "Enabled",
"english": "English",
+ "enter-payment": "Enter payment",
"error-during-import": "Error during import",
"error-whyile-copying-to-clipboard": "Error while copying to clipboard",
"error_on_login": "Error on login",
@@ -269,6 +278,7 @@
"no-runners-found": "No runners found",
"no-tracks-added-yet": "there are no tracks added yet.",
"non-blanko": "Non/Blanko",
+ "open": "OPEN",
"organization": "Organization",
"organization-added": "Organization added",
"organization-deleted": "Organization deleted",
@@ -279,6 +289,8 @@
"organizations-are-being-loaded": "organizations are being loaded...",
"orgs": "Organizations",
"oss_credit_description": "We use a lot of open source software on these projects, and would like to thank the following projects and contributors who help make open source great!",
+ "paid": "PAID",
+ "paid-amount": "Paid amount",
"password": "Password",
"password-changed": "Password changed!",
"password-is-required": "Password is required",
@@ -287,6 +299,7 @@
"password-reset-mail-sent": "Password reset mail was sent to \"{usersEmail}\".",
"password-reset-successful": "Password Reset successful!",
"passwords-dont-match": "Passwords don't match!",
+ "payment-amount-must-be-greater-than-0-00eur": "Payment amount must be greater than 0.00€!",
"pdf-generation-failed": "PDF generation failed!",
"pdf-successfully-generated": "PDF successfully generated!",
"pdfs-successfully-generated": "PDFs successfully generated!",
@@ -309,9 +322,11 @@
"please-provide-the-required-information-to-add-a-new-user": "Please provide the required information to add a new user.",
"please-provide-the-required-information-to-create-a-new-scanstation": "Please provide the required information to create a new scanstation",
"please-request-a-new-reset-mail": "Please request a new reset mail...",
+ "please-wait-a-moment-your-login-is-still-being-processed": "Please wait a moment, your login is still being processed",
"privacy": "Privacy",
"privacy-loading": "Privacy loading...",
"profile": "Profile",
+ "profile-deleted": "Profile deleted!",
"profile-picture": "Profile Picture",
"profile-updated": "Profile updated!",
"read-license": "Read License",
@@ -362,7 +377,10 @@
"stuff-that-could-harm-your-profile": "Stuff that could harm your profile",
"successful-password-reset": "Successful password reset!",
"team": "Team",
+ "team-added": "Team added",
+ "team-deleted": "Team deleted",
"team-detail-is-being-loaded": "team detail is being loaded...",
+ "team-is-being-added": "Team is being added...",
"team-name": "Team name",
"team-name-is-required": "team name is required",
"teams": "Teams",
@@ -387,28 +405,35 @@
"total-distance": "total distance",
"total-donation-amount": "total donation amount",
"total-donations": "total donations",
+ "total-paid-amount": "Total paid amount",
"total-scans": "total scans",
"total_donation_amount_in_eur": "Total donation amount in €",
"track": "Track",
"track-added": "Track added",
"track-data-is-being-loaded": "Track data is being loaded",
"track-is-being-added": "Track is being added...",
+ "track-is-being-updated": "Track is being updated...",
"track-length-in-m": "Track Length in m",
"track-length-must-be-greater-than-0": "Track length must be greater than 0",
"track-name": "Track name",
"track-name-must-not-be-empty": "Track name must not be empty",
+ "track-was-updated": "Track was updated!",
"tracks": "Tracks",
+ "unpaid": "Unpaid",
"update-card": "Update Card",
"update-password": "Update password",
"updated-contact": "Updated contact!",
"updated-donor": "updated donor",
"updated-organization": "updated organization",
"updated-scan": "updated scan",
+ "updated-team": "Updated team",
"updateing-group": "updateing group...",
"updating-card": "Updating card",
+ "updating-donation": "Updating donation",
"updating-organization": "updating organization",
"updating-permissions": "updating permissions...",
"updating-runner": "Updating runner...",
+ "updating-team": "Updating team",
"updating-user": "updating user...",
"updating-your-profile": "Updating your profile...",
"user-added": "User added",
@@ -426,6 +451,7 @@
"welcome_wavinghand": "Welcome 👋",
"yes-i-copied-the-token": "Yes, I copied the token",
"you-are-going-to-loose-all-permissions-and-access-to-the-runner-system": "You are going to loose all permissions and access to the runner system!",
+ "you-can-enter-the-donations-paid-amount-manually-or-use-the-max-button-to-use-the-donations-exact-amount": "You can enter the donation's paid amount manually or use the MAX button to use the donation's exact amount.",
"you-can-now-use-your-new-password-to-log-in-to-your-account": "You can now use your new password to log in to your account! 🎉",
"you-can-provide-a-runner-but-you-dont-have-to": "You can provide a runner, but you don't have to.",
"you-dont-have-any-scanstations-yet": "You don't have any scanstations yet",
|