From 3c65fed994223b18c22d27ca5a9df5bb0fd26680 Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Sun, 21 Sep 2025 17:31:12 +0200 Subject: [PATCH] =?UTF-8?q?F=C3=BCgt=20die=20Funktion=20zum=20Laden=20von?= =?UTF-8?q?=20Turnieren=20beim=20Start=20hinzu=20und=20optimiert=20die=20T?= =?UTF-8?q?urniererstellung,=20um=20die=20Turnierliste=20nach=20der=20Erst?= =?UTF-8?q?ellung=20eines=20neuen=20Turniers=20automatisch=20zu=20aktualis?= =?UTF-8?q?ieren.=20Verbessert=20die=20Anzeige=20von=20Turnierdaten,=20ind?= =?UTF-8?q?em=20der=20Turniername=20priorisiert=20wird,=20und=20behandelt?= =?UTF-8?q?=20Fehler=20beim=20Laden=20und=20Erstellen=20von=20Turnieren.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/views/TournamentsView.vue | 49 ++++++++++++++++++++------ 1 file changed, 39 insertions(+), 10 deletions(-) diff --git a/frontend/src/views/TournamentsView.vue b/frontend/src/views/TournamentsView.vue index 2c899bb..760db88 100644 --- a/frontend/src/views/TournamentsView.vue +++ b/frontend/src/views/TournamentsView.vue @@ -6,11 +6,11 @@
@@ -476,6 +476,9 @@ export default { this.clubMembers = m.data; }, mounted() { + // Lade Turniere beim Start + this.loadTournaments(); + // Event-Listener für das Entfernen des Highlights document.addEventListener('click', (e) => { // Entferne Highlight nur wenn nicht auf eine Matrix-Zelle geklickt wird @@ -575,15 +578,41 @@ export default { return p.member.firstName + ' ' + p.member.lastName; }, + async loadTournaments() { + try { + const d = await apiClient.get(`/tournament/${this.currentClub}`); + this.dates = d.data; + console.log('Loaded tournaments:', this.dates); + } catch (error) { + console.error('Fehler beim Laden der Turniere:', error); + this.dates = []; + } + }, + async createTournament() { - const r = await apiClient.post('/tournament', { - clubId: this.currentClub, - tournamentName: this.newDate, - date: this.newDate - }); - this.dates = r.data; - this.selectedDate = this.dates[this.dates.length - 1].id; - this.newDate = ''; + try { + const r = await apiClient.post('/tournament', { + clubId: this.currentClub, + tournamentName: this.newDate, + date: this.newDate + }); + + console.log('Tournament created, response:', r.data); + + // Speichere die ID des neuen Turniers + const newTournamentId = r.data.id; + + // Lade die Turniere neu + await this.loadTournaments(); + + // Setze das neue Turnier als ausgewählt + this.selectedDate = newTournamentId; + + this.newDate = ''; + } catch (error) { + console.error('Fehler beim Erstellen des Turniers:', error); + alert('Fehler beim Erstellen des Turniers: ' + (error.response?.data?.error || error.message)); + } }, async addParticipant() {