xcode16
Raz 1 year ago
parent ac641cfca0
commit d4a40a20b6
  1. 4
      PadelClub/Data/TeamRegistration.swift
  2. 4
      PadelClub/Views/Calling/TeamsCallingView.swift
  3. 30
      PadelClub/Views/Team/EditingTeamView.swift

@ -503,10 +503,6 @@ final class TeamRegistration: ModelObject, Storable {
else { confirmationDate = nil } else { confirmationDate = nil }
} }
func didConfirmSummon() -> Bool {
confirmationDate != nil
}
func tournamentObject() -> Tournament? { func tournamentObject() -> Tournament? {
return Store.main.findById(tournament) return Store.main.findById(tournament)
} }

@ -32,7 +32,7 @@ struct TeamsCallingView: View {
} }
} }
.buttonStyle(.plain) .buttonStyle(.plain)
.listRowView(isActive: team.didConfirmSummon(), color: .green, hideColorVariation: true) .listRowView(isActive: team.confirmed(), color: .green, hideColorVariation: true)
} }
} }
} }
@ -52,7 +52,7 @@ struct TeamsCallingView: View {
Logger.error(error) Logger.error(error)
} }
} label: { } label: {
if team.didConfirmSummon() { if team.confirmed() {
Label("Confirmation reçue", systemImage: "checkmark.circle.fill").foregroundStyle(.green) Label("Confirmation reçue", systemImage: "checkmark.circle.fill").foregroundStyle(.green)
} else { } else {
Label("Confirmation reçue", systemImage: "circle").foregroundStyle(.logoRed) Label("Confirmation reçue", systemImage: "circle").foregroundStyle(.logoRed)

@ -77,21 +77,10 @@ struct EditingTeamView: View {
Text("Convocation") Text("Convocation")
} }
Button { Toggle(isOn: confirmationReceived) {
team.toggleSummonConfirmation() Text("Confirmation reçue")
do { Text("L'équipe vous a confirmé leur convocation")
try self.tournament.tournamentStore.teamRegistrations.addOrUpdate(instance: team)
} catch {
Logger.error(error)
} }
} label: {
if team.didConfirmSummon() {
Label("Confirmation reçue", systemImage: "checkmark.circle.fill").foregroundStyle(.green)
} else {
Label("Confirmation reçue", systemImage: "circle").foregroundStyle(.logoRed)
}
}
} else { } else {
Text("Cette équipe n'a pas été convoquée") Text("Cette équipe n'a pas été convoquée")
} }
@ -273,6 +262,19 @@ struct EditingTeamView: View {
.navigationBarTitleDisplayMode(.inline) .navigationBarTitleDisplayMode(.inline)
} }
private var confirmationReceived: Binding<Bool> {
Binding {
team.confirmed()
} set: { confirmed in
team.confirmationDate = confirmed ? Date() : nil
do {
try tournamentStore.teamRegistrations.addOrUpdate(instance: team)
} catch {
Logger.error(error)
}
}
}
private var hasArrived: Binding<Bool> { private var hasArrived: Binding<Bool> {
Binding { Binding {
team.unsortedPlayers().allSatisfy({ $0.hasArrived }) team.unsortedPlayers().allSatisfy({ $0.hasArrived })

Loading…
Cancel
Save