@ -1682,12 +1682,14 @@ defer {
}
public func initSettings ( templateTournament : Tournament ? , overrideTeamCount : Bool = true ) {
courtCount = eventObject ( ) ? . clubObject ( ) ? . courtCount ? ? 2
setupDefaultPrivateSettings ( templateTournament : templateTournament )
setupUmpireSettings ( defaultTournament : nil ) // d e f a u l t i s n o t t e m p l a t e , d e f a u l t i s f o r e v e n t s h a r i n g s e t t i n g s
if let templateTournament {
setupRegistrationSettings ( templateTournament : templateTournament , overrideTeamCount : overrideTeamCount )
}
setupFederalSettings ( )
customizeUsingPreferences ( )
}
public func setupFederalSettings ( ) {
@ -1703,6 +1705,23 @@ defer {
}
}
public func customizeUsingPreferences ( ) {
guard let lastTournamentWithSameBuild = DataStore . shared . tournaments . filter ( { tournament in
tournament . tournamentLevel = = self . tournamentLevel
&& tournament . tournamentCategory = = self . tournamentCategory
&& tournament . federalTournamentAge = = self . federalTournamentAge
&& tournament . hasEnded ( ) = = true
&& tournament . isCanceled = = false
&& tournament . isDeleted = = false
} ) . sorted ( by : \ . endDate ! , order : . descending ) . first else {
return
}
self . entryFee = lastTournamentWithSameBuild . entryFee
self . clubMemberFeeDeduction = lastTournamentWithSameBuild . clubMemberFeeDeduction
}
public func deadline ( for type : TournamentDeadlineType ) -> Date ? {
guard [ . p500 , . p1000 , . p1500 , . p2000 ] . contains ( tournamentLevel ) else { return nil }