From 4579ced7a29e2ee6e60dec8298f490aeed592660 Mon Sep 17 00:00:00 2001 From: Razmig Sarkissian Date: Wed, 20 Aug 2025 14:09:21 +0200 Subject: [PATCH] =?UTF-8?q?possiblit=C3=A9=20de=20lancer=20l'horaire=20int?= =?UTF-8?q?elligent=20sur=20tous=20les=20tournois=20d'un=20evenement=20en?= =?UTF-8?q?=20une=20fois?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PadelClubData/Data/MatchScheduler.swift | 3 +-- PadelClubData/Data/Tournament.swift | 17 +++++++++++++++++ PadelClubData/Extensions/Date+Extensions.swift | 4 ++++ 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/PadelClubData/Data/MatchScheduler.swift b/PadelClubData/Data/MatchScheduler.swift index 8999fa0..5f16a7d 100644 --- a/PadelClubData/Data/MatchScheduler.swift +++ b/PadelClubData/Data/MatchScheduler.swift @@ -138,7 +138,6 @@ final public class MatchScheduler: BaseMatchScheduler, SideStorable { } public func groupStageDispatcher(groupStages: [GroupStage], startingDate: Date) -> GroupStageMatchDispatcher { - let _groupStages = groupStages // Get the maximum count of matches in any group @@ -839,7 +838,7 @@ final public class MatchScheduler: BaseMatchScheduler, SideStorable { } - if tournament.dayDuration > 1 && (lastDate.timeOfDay == .evening || errorFormat) { + if tournament.dayDuration > 1 && (lastDate.timeOfDay == .evening || lastDate.timeOfDay == .night || errorFormat) { bracketStartDate = lastDate.tomorrowAtNine } diff --git a/PadelClubData/Data/Tournament.swift b/PadelClubData/Data/Tournament.swift index 809f965..d50bb0f 100644 --- a/PadelClubData/Data/Tournament.swift +++ b/PadelClubData/Data/Tournament.swift @@ -2386,6 +2386,23 @@ defer { return federalTournamentAge.minimumNumberOfTeams(inCategory: tournamentCategory, andInLevel: tournamentLevel) } + public func removeAllDates() { + let allMatches = allMatches() + allMatches.forEach({ + $0.startDate = nil + $0.confirmed = false + }) + self.tournamentStore?.matches.addOrUpdate(contentOfs: allMatches) + + let allGroupStages = groupStages() + allGroupStages.forEach({ $0.startDate = nil }) + self.tournamentStore?.groupStages.addOrUpdate(contentOfs: allGroupStages) + + let allRounds = allRounds() + allRounds.forEach({ $0.startDate = nil }) + self.tournamentStore?.rounds.addOrUpdate(contentOfs: allRounds) + } + // MARK: - func insertOnServer() throws { diff --git a/PadelClubData/Extensions/Date+Extensions.swift b/PadelClubData/Extensions/Date+Extensions.swift index bc3a7cd..a9878f0 100644 --- a/PadelClubData/Extensions/Date+Extensions.swift +++ b/PadelClubData/Extensions/Date+Extensions.swift @@ -214,6 +214,10 @@ public extension Date { Calendar.current.component(.day, from: self) } + var hourInt: Int { + Calendar.current.component(.hour, from: self) + } + var startOfDay: Date { Calendar.current.startOfDay(for: self) }