fix currentCanceled compilation issue

show confirmation after groupstage generation
multistore
Razmig Sarkissian 2 years ago
parent ae5e7b75c6
commit faed3c1c73
  1. 2
      PadelClub/Data/Tournament.swift
  2. 10
      PadelClub/Views/GroupStage/GroupStageSettingsView.swift
  3. 7
      PadelClub/Views/Tournament/Screen/Components/TournamentStatusView.swift

@ -150,7 +150,7 @@ class Tournament : ModelObject, Storable {
}
func state() -> Tournament.State {
if isCanceled {
if currentCanceled == true {
return .canceled
}
if (groupStageCount > 0 && groupStages().isEmpty == false)

@ -12,6 +12,7 @@ struct GroupStageSettingsView: View {
@EnvironmentObject var dataStore: DataStore
@Environment(Tournament.self) var tournament: Tournament
@State private var nameAlphabetical: Bool = false
@State private var generationDone: Bool = false
let alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
@ -58,6 +59,13 @@ struct GroupStageSettingsView: View {
Text("Nommer les poules alphabétiquement")
}
}
.overlay(alignment: .bottom) {
if generationDone {
Label("Poules mises à jour", systemImage: "checkmark.circle.fill")
.toastFormatted()
.deferredRendering(for: .seconds(2))
}
}
.onChange(of: nameAlphabetical) {
let groupStages = tournament.groupStages()
if nameAlphabetical {
@ -78,6 +86,7 @@ struct GroupStageSettingsView: View {
RowButtonView("Refaire les poules", role: .destructive) {
tournament.deleteGroupStages()
tournament.buildGroupStages()
generationDone = true
_save()
}
}
@ -87,6 +96,7 @@ struct GroupStageSettingsView: View {
RowButtonView("Poule \(mode.localizedLabel().lowercased())", role: .destructive, systemImage: mode.systemImage) {
tournament.groupStageOrderingMode = mode
tournament.refreshGroupStages()
generationDone = true
_save()
}
}

@ -55,7 +55,7 @@ struct TournamentStatusView: View {
Text("todo: expliquer ce que ca fait")
}
if tournament.hasEnded() == false && tournament.isCanceled == false {
if tournament.hasEnded() == false && tournament.currentCanceled == false {
Section {
RowButtonView("Annuler le tournoi", role: .destructive) {
tournament.setCanceled(true)
@ -78,7 +78,10 @@ struct TournamentStatusView: View {
.onChange(of: tournament.endDate) {
_save()
}
.onChange(of: [tournament.isDeleted, tournament.isCanceled, tournament.isPrivate]) {
.onChange(of: [tournament.isDeleted, tournament.isPrivate]) {
_save()
}
.onChange(of: tournament.isCanceled) {
_save()
}
}

Loading…
Cancel
Save