fixes and add legend / inscription guide

online_reg
Raz 10 months ago
parent 457900f64a
commit d11af504b5
  1. 11
      PadelClub/Data/TeamRegistration.swift
  2. 2
      PadelClub/Views/Team/EditingTeamView.swift
  3. 18
      PadelClub/Views/Tournament/Screen/InscriptionManagerView.swift

@ -122,6 +122,7 @@ final class TeamRegistration: ModelObject, Storable {
func isHere() -> Bool { func isHere() -> Bool {
let unsortedPlayers = unsortedPlayers() let unsortedPlayers = unsortedPlayers()
if unsortedPlayers.isEmpty { return false }
return unsortedPlayers.allSatisfy({ $0.hasArrived }) return unsortedPlayers.allSatisfy({ $0.hasArrived })
} }
@ -197,7 +198,10 @@ final class TeamRegistration: ModelObject, Storable {
} }
func isImported() -> Bool { func isImported() -> Bool {
return unsortedPlayers().allSatisfy({ $0.isImported() }) let unsortedPlayers = unsortedPlayers()
if unsortedPlayers.isEmpty { return false }
return unsortedPlayers.allSatisfy({ $0.isImported() })
} }
func isWildCard() -> Bool { func isWildCard() -> Bool {
@ -304,7 +308,10 @@ final class TeamRegistration: ModelObject, Storable {
} }
func canPlay() -> Bool { func canPlay() -> Bool {
return matches().isEmpty == false || players().allSatisfy({ $0.hasPaid() || $0.hasArrived }) let unsortedPlayers = unsortedPlayers()
if unsortedPlayers.isEmpty { return false }
return matches().isEmpty == false || unsortedPlayers.allSatisfy({ $0.hasPaid() || $0.hasArrived })
} }
func availableForSeedPick() -> Bool { func availableForSeedPick() -> Bool {

@ -347,7 +347,7 @@ struct EditingTeamView: View {
private var hasArrived: Binding<Bool> { private var hasArrived: Binding<Bool> {
Binding { Binding {
team.unsortedPlayers().allSatisfy({ $0.hasArrived }) team.isHere()
} set: { hasArrived in } set: { hasArrived in
team.unsortedPlayers().forEach { team.unsortedPlayers().forEach {
$0.hasArrived = hasArrived $0.hasArrived = hasArrived

@ -533,6 +533,19 @@ struct InscriptionManagerView: View {
} }
} }
private func _fixModel() {
let players = tournament.players()
players.forEach { player in
if player.source == .onlineRegistration {
player.source = .frenchFederation
player.registeredOnline = true
}
}
try? tournamentStore.playerRegistrations.addOrUpdate(contentOfs: players)
}
private func _refreshList() async { private func _refreshList() async {
if refreshInProgress { return } if refreshInProgress { return }
@ -823,6 +836,11 @@ struct InscriptionManagerView: View {
if let closedRegistrationDate = tournament.closedRegistrationDate { if let closedRegistrationDate = tournament.closedRegistrationDate {
CloseDatePicker(closedRegistrationDate: closedRegistrationDate) CloseDatePicker(closedRegistrationDate: closedRegistrationDate)
} }
Button("bug fix") {
_fixModel()
}
if tournament.enableOnlineRegistration { if tournament.enableOnlineRegistration {
Button { Button {
Task { Task {

Loading…
Cancel
Save