Adds try/catch for Store changes

multistore
Laurent 2 years ago
parent cc06ee8ed5
commit 1769509024
  1. 7
      PadelClub/Views/Planning/PlanningSettingsView.swift
  2. 10
      PadelClub/Views/Planning/SchedulerView.swift
  3. 7
      PadelClub/Views/Tournament/FileImportView.swift
  4. 7
      PadelClub/Views/Tournament/Screen/Components/TournamentClubSettingsView.swift
  5. 7
      PadelClub/Views/Tournament/Screen/Components/TournamentGeneralSettingsView.swift
  6. 7
      PadelClub/Views/Tournament/Screen/Components/TournamentMatchFormatsSettingsView.swift
  7. 11
      PadelClub/Views/Tournament/Screen/Components/UpdateSourceRankDateView.swift
  8. 7
      PadelClub/Views/Tournament/Screen/InscriptionManagerView.swift
  9. 7
      PadelClub/Views/Tournament/TournamentView.swift

@ -6,6 +6,7 @@
//
import SwiftUI
import LeStorage
struct PlanningSettingsView: View {
@EnvironmentObject var dataStore: DataStore
@ -216,7 +217,11 @@ struct PlanningSettingsView: View {
}
private func _save() {
try? dataStore.tournaments.addOrUpdate(instance: tournament)
do {
try dataStore.tournaments.addOrUpdate(instance: tournament)
} catch {
Logger.error(error)
}
}
}

@ -6,6 +6,7 @@
//
import SwiftUI
import LeStorage
extension GroupStage: Schedulable {
func titleLabel() -> String {
@ -39,8 +40,13 @@ struct SchedulerView: View {
groupStages.forEach { groupStage in
groupStage.updateMatchFormat(tournament.groupStageMatchFormat)
}
try? dataStore.tournaments.addOrUpdate(instance: tournament)
try? dataStore.groupStages.addOrUpdate(contentOfs: groupStages)
do {
try dataStore.tournaments.addOrUpdate(instance: tournament)
try dataStore.groupStages.addOrUpdate(contentOfs: groupStages)
} catch {
Logger.error(error)
}
}
ForEach(tournament.groupStages()) {

@ -7,6 +7,7 @@
import SwiftUI
import TipKit
import LeStorage
struct FileImportView: View {
@EnvironmentObject var dataStore: DataStore
@ -294,7 +295,11 @@ struct FileImportView: View {
}
private func _save() {
try? dataStore.tournaments.addOrUpdate(instance: tournament)
do {
try dataStore.tournaments.addOrUpdate(instance: tournament)
} catch {
Logger.error(error)
}
}
}

@ -6,6 +6,7 @@
//
import SwiftUI
import LeStorage
struct TournamentClubSettingsView: View {
@Environment(Tournament.self) private var tournament: Tournament
@ -67,7 +68,11 @@ struct TournamentClubSettingsView: View {
}
}
.onChange(of: tournament.courtCount) {
try? dataStore.tournaments.addOrUpdate(instance: tournament)
do {
try dataStore.tournaments.addOrUpdate(instance: tournament)
} catch {
Logger.error(error)
}
}
.navigationDestination(item: $selectedCourt) { court in
CourtView(court: court)

@ -6,6 +6,7 @@
//
import SwiftUI
import LeStorage
struct TournamentGeneralSettingsView: View {
@Environment(Tournament.self) private var tournament: Tournament
@ -103,7 +104,11 @@ struct TournamentGeneralSettingsView: View {
}
private func _save() {
try? dataStore.tournaments.addOrUpdate(instance: tournament)
do {
try dataStore.tournaments.addOrUpdate(instance: tournament)
} catch {
Logger.error(error)
}
}
}

@ -6,6 +6,7 @@
//
import SwiftUI
import LeStorage
struct TournamentMatchFormatsSettingsView: View {
@Environment(NavigationViewModel.self) var navigation: NavigationViewModel
@ -99,7 +100,11 @@ struct TournamentMatchFormatsSettingsView: View {
}
private func _save() {
try? dataStore.tournaments.addOrUpdate(instance: tournament)
do {
try dataStore.tournaments.addOrUpdate(instance: tournament)
} catch {
Logger.error(error)
}
}
}

@ -6,6 +6,7 @@
//
import SwiftUI
import LeStorage
struct UpdateSourceRankDateView: View {
@EnvironmentObject var dataStore: DataStore
@ -37,12 +38,12 @@ struct UpdateSourceRankDateView: View {
Task {
do {
try await tournament.updateRank(to: currentRankSourceDate)
await MainActor.run {
try await MainActor.run {
tournament.unsortedPlayers().forEach { player in
player.setWeight(in: tournament)
}
try? dataStore.playerRegistrations.addOrUpdate(contentOfs: tournament.unsortedPlayers())
try dataStore.playerRegistrations.addOrUpdate(contentOfs: tournament.unsortedPlayers())
tournament.unsortedTeams().forEach { team in
team.setWeight(from: team.players())
@ -51,15 +52,15 @@ struct UpdateSourceRankDateView: View {
}
}
try? dataStore.teamRegistrations.addOrUpdate(contentOfs: tournament.unsortedTeams())
try dataStore.teamRegistrations.addOrUpdate(contentOfs: tournament.unsortedTeams())
try? dataStore.tournaments.addOrUpdate(instance: tournament)
try dataStore.tournaments.addOrUpdate(instance: tournament)
updatingRank = false
confirmUpdateRank = false
}
} catch {
Logger.error(error)
}
}
}.disabled(updatingRank)

@ -7,6 +7,7 @@
import SwiftUI
import TipKit
import LeStorage
struct InscriptionManagerView: View {
@EnvironmentObject var dataStore: DataStore
@ -804,7 +805,11 @@ struct InscriptionManagerView: View {
}
private func _save() {
try? dataStore.tournaments.addOrUpdate(instance: tournament)
do {
try dataStore.tournaments.addOrUpdate(instance: tournament)
} catch {
Logger.error(error)
}
}
}

@ -6,6 +6,7 @@
//
import SwiftUI
import LeStorage
struct TournamentView: View {
@EnvironmentObject var dataStore: DataStore
@ -126,7 +127,11 @@ struct TournamentView: View {
}
private func _save() {
try? dataStore.tournaments.addOrUpdate(instance: tournament)
do {
try dataStore.tournaments.addOrUpdate(instance: tournament)
} catch {
Logger.error(error)
}
}
}

Loading…
Cancel
Save