Tipp-Formular hinzugefügt

This commit is contained in:
R40fendt
2025-08-18 21:47:10 +02:00
parent 661f523793
commit 928f50a55e
4 changed files with 122 additions and 43 deletions

View File

@@ -1,12 +1,29 @@
<script lang="ts">
import ritzenbergenlib from "../../ritzenbergenlib";
import "../../assets/css/bulitipp2.css";
export default {
props: ["token"],
props: {
token: {
type: String,
required: false,
},
},
data() {
return {
spieltag: "",
vmodelspieltag: "",
tipps: [
new ritzenbergenlib.Tipp(null, null, null),
new ritzenbergenlib.Tipp(null, null, null),
new ritzenbergenlib.Tipp(null, null, null),
new ritzenbergenlib.Tipp(null, null, null),
new ritzenbergenlib.Tipp(null, null, null),
new ritzenbergenlib.Tipp(null, null, null),
new ritzenbergenlib.Tipp(null, null, null),
new ritzenbergenlib.Tipp(null, null, null),
new ritzenbergenlib.Tipp(null, null, null)
]
};
},
asyncComputed: {
@@ -26,52 +43,100 @@ export default {
},
default: null,
},
paarungen: {
get() {
if (this.spieltag == null) return null;
return fetch(
ritzenbergenlib.RitzenbergenLib.api(
"/bulitipp/paarungen.php?spieltag=" + this.spieltag
)
)
.then((response) => response.json())
.then((response) => response.data)
.then((response) =>
response.map((el) => {
return new ritzenbergenlib.Paarung(el[0], el[1], el[2]);
})
);
},
default: null,
},
},
emits: ["logout"],
methods: {
getTeamImage(team: string) {
return ritzenbergenlib.RitzenbergenLib.api(
"/bulitipp/get-image.php?team=" + team
);
},
async tippen(){
this.tipps.forEach((tipp, i) => {
tipp.paarung = this.paarungen[i];
});
const params = new URLSearchParams({
spieltag: this.spieltag.toString(),
tipps: JSON.stringify(this.tipps)
});
let result=await fetch(
ritzenbergenlib.RitzenbergenLib.api("/bulitipp/tippeintragen.php?"+params.toString()),
{
method: "GET",
headers: {
Authorization: "Bearer " + this.token,
},
}
);
console.log(result);
}
},
emits: ["logout"]
};
</script>
<template>
<div>
<div v-if="(spieltag == '' || spieltag == null) && userinfo != null">
<h1>Moin {{ userinfo.username }}!</h1>
<br /><br />
<form @submit.prevent="spieltag = parseInt(vmodelspieltag)">
<input
type="text"
v-model="vmodelspieltag"
placeholder="Spieltag"
required
/>
<input type="submit" value="Tippen" />
<br><br>
<input type="button" value="Ausloggen" @click="$emit('logout')" />
</form>
</div>
<div class="tippenEintragen" v-else>
<form @submit.prevent="" id="mainform">
<span class="paarung">
<img src="./get-buli-image.php?team=Bremen" alt="" />
<span class="team-name">Heim</span>
<div>
<div v-if="(spieltag == '' || spieltag == null) && userinfo != null">
<h1>Moin {{ userinfo.username }}!</h1>
<br /><br />
<form @submit.prevent="spieltag = parseInt(vmodelspieltag)">
<input
type="text"
v-model="vmodelspieltag"
placeholder="Spieltag"
required
/>
<input type="submit" value="Tippen" />
<br /><br />
<input type="button" value="Ausloggen" @click="$emit('logout')" />
</form>
</div>
<div class="tippenEintragen" v-else>
<form @submit.prevent="tippen" id="mainform">
<span class="paarung" v-for="(paarung,i) in paarungen" :key="paarung.id">
<img :src="getTeamImage(paarung.heim)" alt="" />
<span class="team-name">{{ paarung.heim }}</span>
<input type="number" min="0" class="score" required />
<span class="vs"></span>
<input type="number" min="0" class="score" required />
<span class="team-name">Gast</span
><img src="./get-buli-image.php?team=Bremen" alt="" /><br />
</span>
<!--<h1>Deadline überschritten!</h1>
<input v-model="tipps[i].heim" type="number" min="0" class="score" required />
<span class="vs"></span>
<input v-model="tipps[i].gast" type="number" min="0" class="score" required />
<span class="team-name">{{ paarung.gast }}</span>
<img :src="getTeamImage(paarung.gast)" alt="" /><br />
</span>
<!--<h1>Deadline überschritten!</h1>
<h1>
BuLi-Tipp ist noch nicht für diesen Spieltag vorbereitet worden...
Versuch es wannanders nochmal!
</h1>-->
<input type="submit" value="Tippen" />
<br><br>
<input type="button" value="Abbrechen" @click="spieltag=''" />
</form>
</div>
<input type="submit" value="Tippen" />
<br /><br />
<input type="button" value="Abbrechen" @click="spieltag = ''" />
</form>
</div>
</div>
</template>
<style>
img {
width: 30px;
}
</style>