From 2dd89faa2d37ef75bcad34718a7b37354293c0ae Mon Sep 17 00:00:00 2001 From: Raz Date: Thu, 24 Apr 2025 19:20:13 +0200 Subject: [PATCH] 1.2.16 --- PadelClub.xcodeproj/project.pbxproj | 12 ++++++------ PadelClub/Views/Round/LoserRoundView.swift | 6 +++++- PadelClub/Views/Round/LoserRoundsView.swift | 9 +++++++++ 3 files changed, 20 insertions(+), 7 deletions(-) diff --git a/PadelClub.xcodeproj/project.pbxproj b/PadelClub.xcodeproj/project.pbxproj index 45faec7..114416c 100644 --- a/PadelClub.xcodeproj/project.pbxproj +++ b/PadelClub.xcodeproj/project.pbxproj @@ -3714,7 +3714,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.2.15; + MARKETING_VERSION = 1.2.16; PRODUCT_BUNDLE_IDENTIFIER = app.padelclub; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -3759,7 +3759,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.2.15; + MARKETING_VERSION = 1.2.16; PRODUCT_BUNDLE_IDENTIFIER = app.padelclub; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -3877,7 +3877,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.2.15; + MARKETING_VERSION = 1.2.16; PRODUCT_BUNDLE_IDENTIFIER = app.padelclub; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -3922,7 +3922,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.2.15; + MARKETING_VERSION = 1.2.16; PRODUCT_BUNDLE_IDENTIFIER = app.padelclub; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -3966,7 +3966,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.2.15; + MARKETING_VERSION = 1.2.16; PRODUCT_BUNDLE_IDENTIFIER = app.padelclub.beta; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; @@ -4008,7 +4008,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.2.15; + MARKETING_VERSION = 1.2.16; PRODUCT_BUNDLE_IDENTIFIER = app.padelclub.beta; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; diff --git a/PadelClub/Views/Round/LoserRoundView.swift b/PadelClub/Views/Round/LoserRoundView.swift index ec8b126..46eed9f 100644 --- a/PadelClub/Views/Round/LoserRoundView.swift +++ b/PadelClub/Views/Round/LoserRoundView.swift @@ -148,10 +148,14 @@ defer { if _roundDisabled() { RowButtonView("Jouer ce tour", role: .destructive) { rounds.forEach { $0.enableRound() } + loserBracket.updateEnabledMatches() + updateDisplayedMatches() } } else { RowButtonView("Ne pas jouer ce tour", role: .destructive) { rounds.forEach { $0.disableRound() } + loserBracket.updateEnabledMatches() + updateDisplayedMatches() } } } @@ -164,7 +168,7 @@ defer { print("func _roundDisabled", duration.formatted(.units(allowed: [.seconds, .milliseconds]))) } #endif - return loserBracket.enabledMatches.isEmpty + return loserBracket.allMatches.allSatisfy({ $0.disabled }) } private func _prepareLoserRoundMatches() async -> [Match] { diff --git a/PadelClub/Views/Round/LoserRoundsView.swift b/PadelClub/Views/Round/LoserRoundsView.swift index 94eea97..5cd2199 100644 --- a/PadelClub/Views/Round/LoserRoundsView.swift +++ b/PadelClub/Views/Round/LoserRoundsView.swift @@ -144,6 +144,15 @@ class LoserRound: Identifiable, Selectable { var tournamentStore: TournamentStore? { return upperBracketRound.tournamentStore } + + func updateEnabledMatches() { + enabledMatches = upperBracketRound.tournamentStore?.matches.filter { match in + // Match must be disabled and its round ID must be in our rounds collection + match.disabled == false && + match.round != nil && + roundIDs.contains(match.round!) + } ?? [] + } func gatherAllMatches() -> [Match] { #if _DEBUG_TIME //DEBUGING TIME