|
|
|
|
@ -186,12 +186,20 @@ public class DataStore: ObservableObject { |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public func deleteTournament(_ tournament: Tournament) { |
|
|
|
|
public func deleteTournament(_ tournament: Tournament, noSync: Bool = false) { |
|
|
|
|
let event = tournament.eventObject() |
|
|
|
|
let isLastTournament = event?.tournaments.count == 1 |
|
|
|
|
self.tournaments.delete(instance: tournament) |
|
|
|
|
if let event, isLastTournament { |
|
|
|
|
self.events.delete(instance: event) |
|
|
|
|
|
|
|
|
|
if noSync { |
|
|
|
|
self.tournaments.deleteNoSync(instance: tournament, cascading: true) |
|
|
|
|
if let event, isLastTournament { |
|
|
|
|
self.events.deleteNoSync(instance: event, cascading: true) |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
self.tournaments.delete(instance: tournament) |
|
|
|
|
if let event, isLastTournament { |
|
|
|
|
self.events.delete(instance: event) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
StoreCenter.main.destroyStore(identifier: tournament.id) |
|
|
|
|
} |
|
|
|
|
|