diff --git a/PadelClub/Data/Tournament.swift b/PadelClub/Data/Tournament.swift index 62cc32d..8eef16e 100644 --- a/PadelClub/Data/Tournament.swift +++ b/PadelClub/Data/Tournament.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) diff --git a/PadelClub/Views/GroupStage/GroupStageSettingsView.swift b/PadelClub/Views/GroupStage/GroupStageSettingsView.swift index 5b2d65d..cd6b042 100644 --- a/PadelClub/Views/GroupStage/GroupStageSettingsView.swift +++ b/PadelClub/Views/GroupStage/GroupStageSettingsView.swift @@ -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() } } diff --git a/PadelClub/Views/Tournament/Screen/Components/TournamentStatusView.swift b/PadelClub/Views/Tournament/Screen/Components/TournamentStatusView.swift index f4efd74..20e9bdc 100644 --- a/PadelClub/Views/Tournament/Screen/Components/TournamentStatusView.swift +++ b/PadelClub/Views/Tournament/Screen/Components/TournamentStatusView.swift @@ -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() } }