This commit is contained in:
2024-12-02 12:56:43 +01:00
parent 0acda07eb5
commit 048edfba89
8 changed files with 88 additions and 55 deletions

View File

@@ -77,8 +77,8 @@
w-full
md:w-auto
" @click="() => {
state.delete_active = true;
}
state.delete_active = true;
}
">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
stroke="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
@@ -104,8 +104,8 @@
bg-blue-500
hover:bg-blue-600 hover:shadow-lg
" @click="() => {
state.delete_active = false;
}
state.delete_active = false;
}
">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"
stroke="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"
@@ -146,8 +146,8 @@
<div class="flex lg:flex-wrap flex-row lg:space-x-2">
<div class="flex-none">
<button @click="() => {
state.activetab = 'profile';
}
state.activetab = 'profile';
}
" :class="{
'tab-active border-b-2 font-medium border-blue-500':
state.activetab === 'profile',
@@ -157,8 +157,8 @@
</div>
<div class="flex-none">
<button @click="() => {
state.activetab = 'laptimes';
}
state.activetab = 'laptimes';
}
" :class="{
'tab-active border-b-2 font-medium border-blue-500':
state.activetab === 'laptimes',
@@ -168,8 +168,8 @@
</div>
<div class="flex-none">
<button @click="() => {
state.activetab = 'sponsorings';
}
state.activetab = 'sponsorings';
}
" :class="{
'tab-active border-b-2 font-medium border-blue-500':
state.activetab === 'sponsorings',
@@ -398,14 +398,14 @@
</td>
<td class="px-4 py-3">
<span v-text="(s.amountPerDistance / 100)
.toFixed(2)
.toLocaleString('de-DE', { valute: 'EUR' })
.toFixed(2)
.toLocaleString('de-DE', { valute: 'EUR' })
"></span>€
</td>
<td class="px-4 py-3">
<span v-text="(s.amount / 100)
.toFixed(2)
.toLocaleString('de-DE', { valute: 'EUR' })
.toFixed(2)
.toLocaleString('de-DE', { valute: 'EUR' })
"></span>€
</td>
</tr>
@@ -415,30 +415,30 @@
<td class="px-4 py-3">{{ $t("total") }}</td>
<td class="px-4 py-3">
<span v-text="(
state.sponsorings.reduce(function (
sum,
current
) {
return sum + current.amountPerDistance;
},
0) / 100
)
.toFixed(2)
.toLocaleString('de-DE', { valute: 'EUR' })
state.sponsorings.reduce(function (
sum,
current
) {
return sum + current.amountPerDistance;
},
0) / 100
)
.toFixed(2)
.toLocaleString('de-DE', { valute: 'EUR' })
"></span>€
</td>
<td class="px-4 py-3">
<span v-text="(
state.sponsorings.reduce(function (
sum,
current
) {
return sum + current.amount;
},
0) / 100
)
.toFixed(2)
.toLocaleString('de-DE', { valute: 'EUR' })
state.sponsorings.reduce(function (
sum,
current
) {
return sum + current.amount;
},
0) / 100
)
.toFixed(2)
.toLocaleString('de-DE', { valute: 'EUR' })
"></span>€
</td>
</tr>
@@ -475,6 +475,8 @@ import { TYPE, useToast } from "vue-toastification";
import axios from "redaxios";
import bwipjs from "bwip-js";
import Footer from "@/components/Footer.vue";
import { useI18n } from 'vue-i18n'
const { t } = useI18n()
function textToBase64Barcode(text) {
const canvas = document.createElement("canvas");
@@ -531,7 +533,7 @@ axios
})
.catch((error) => {
toast.clear();
toast.error("Profil konnte nicht geladen werden...");
toast.error(t('profil_konnte_nicht_geladen_werden'));
});
axios
.get(`${config.baseurl}api/runners/me/${accesstoken}/scans`)
@@ -553,26 +555,26 @@ axios
state.scans = data;
})
.catch((error) => {
toast.error("Profil konnte nicht geladen werden...");
toast.error(t('profil_konnte_nicht_geladen_werden'));
});
function delete_me() {
toast.clear();
toast("Profil wird gelöscht...");
toast(t('profil_wird_geloescht'));
let url = `${config.baseurl}api/runners/me/${accesstoken}?force=true`;
axios
.delete(url)
.then(() => {
toast.clear();
toast("Alle Daten gelöscht!");
toast(t('alle_daten_geloescht'));
location.replace(`${config.baseurl_selfservice}`);
})
.catch((error) => {
toast.clear();
toast.error("Profil konnte nicht gelöscht werden...");
toast.error(t('profil_konnte_nicht_geloescht_werden'));
});
}
function get_certificate() {
toast("Urkunde wird generiert...");
toast(t('urkunde_wird_generiert'));
const browserlocale = (
(navigator.languages && navigator.languages[0]) ||
""
@@ -590,7 +592,7 @@ function get_certificate() {
.then((response) => {
console.log(response);
if (response.status != "200") {
toast.error("Urkunde konnte nicht generiert werden...");
toast.error(t('urkunde_konnte_nicht_generiert_werden'));
} else {
var fileURL = window.URL.createObjectURL(
new Blob([response.data], { type: "application/pdf" })
@@ -610,17 +612,17 @@ function get_certificate() {
.catch((err) => {
console.error(err);
toast.clear();
toast.error("Urkunde konnte nicht generiert werden...");
toast.error(t('urkunde_konnte_nicht_generiert_werden'));
});
}
function get_registration() {
toast.clear();
toast("Registrierungscode wird generiert...");
toast(t('registrierungscode_wird_generiert'));
var a = document.createElement("a");
a.href = state.barcode;
a.download = "LfK25_Registrierungscode.png";
a.click();
toast.clear();
toast("Registrierungscode generiert!", { type: TYPE.SUCCESS });
toast(t('registrierungscode_generiert'), { type: TYPE.SUCCESS });
}
</script>