fix sharing stuff

sync3
Razmig Sarkissian 1 month ago
parent 4441554881
commit 58f61f395f
  1. 2
      PadelClub/Views/Navigation/Agenda/ActivityView.swift
  2. 2
      PadelClub/Views/Navigation/Toolbox/ToolboxView.swift
  3. 18
      PadelClub/Views/Shared/SupportButtonView.swift
  4. 43
      PadelClub/Views/Tournament/TournamentView.swift
  5. 2
      PadelClub/Views/User/LoginView.swift
  6. 8
      PadelClub/Views/User/ShareModelView.swift

@ -554,7 +554,7 @@ struct ActivityView: View {
RowButtonView("Importer via Tenup") { RowButtonView("Importer via Tenup") {
navigation.agendaDestination = .tenup navigation.agendaDestination = .tenup
} }
SupportButtonView(contentIsUnavailable: true) SupportButtonView(supportButtonType: .contentIsUnavailable)
FooterButtonView("Vous n'êtes pas un juge-arbitre ou un organisateur de tournoi ? En savoir plus") { FooterButtonView("Vous n'êtes pas un juge-arbitre ou un organisateur de tournoi ? En savoir plus") {
presentOnboarding = true presentOnboarding = true

@ -47,7 +47,7 @@ struct ToolboxView: View {
ShareLink(item: URLs.main.url) ShareLink(item: URLs.main.url)
} }
SupportButtonView(contentIsUnavailable: false) SupportButtonView(supportButtonType: .bugReport)
Link(destination: URLs.appReview.url) { Link(destination: URLs.appReview.url) {
Text("Partagez vos impressions !") Text("Partagez vos impressions !")

@ -15,8 +15,15 @@ extension URL: Identifiable {
return self.absoluteString return self.absoluteString
} }
} }
enum SupportButtonType {
case contentIsUnavailable
case supervisorRequest
case bugReport
}
struct SupportButtonView: View { struct SupportButtonView: View {
let contentIsUnavailable: Bool let supportButtonType: SupportButtonType
@State private var sentError: ContactManagerError? = nil @State private var sentError: ContactManagerError? = nil
@State private var zipFilePath: URL? @State private var zipFilePath: URL?
@ -34,11 +41,16 @@ struct SupportButtonView: View {
var body: some View { var body: some View {
Group { Group {
if contentIsUnavailable { switch supportButtonType {
case .supervisorRequest:
Button("Demande d'ajout de superviseur") {
_zip()
}
case .contentIsUnavailable:
FooterButtonView("Besoin d'aide ? Un problème ? Contactez-nous !") { FooterButtonView("Besoin d'aide ? Un problème ? Contactez-nous !") {
_zip() _zip()
} }
} else { case .bugReport:
Button("Signaler un problème") { Button("Signaler un problème") {
_zip() _zip()
} }

@ -172,8 +172,6 @@ struct TournamentView: View {
TeamRestingView() TeamRestingView()
case .stateSettings: case .stateSettings:
TournamentStatusView(tournament: tournament) TournamentStatusView(tournament: tournament)
case .rankingGroupStageSetup:
RankingGroupStageSetupView()
} }
} }
.environment(tournament) .environment(tournament)
@ -266,16 +264,6 @@ struct TournamentView: View {
.foregroundStyle(.secondary) .foregroundStyle(.secondary)
} }
Divider()
Button {
navigation.path.append(Screen.stateSettings)
} label: {
Label("Gestion", systemImage: "trash")
Text("Annuler, supprimer ou terminer le tournoi")
}
.disabled((self.tournament.sharing != nil))
} label: { } label: {
Label("Réglages", systemImage: "wrench.and.screwdriver") Label("Réglages", systemImage: "wrench.and.screwdriver")
Text("Événement, tournoi, structure") Text("Événement, tournoi, structure")
@ -332,25 +320,28 @@ struct TournamentView: View {
Label("Imprimer", systemImage: "printer") Label("Imprimer", systemImage: "printer")
} }
NavigationLink(value: Screen.share) { if self.tournament.sharing == nil {
Label("Partager", systemImage: "square.and.arrow.up") NavigationLink(value: Screen.share) {
Label("Partager", systemImage: "square.and.arrow.up")
}
} }
Divider() Divider()
NavigationLink(value: Screen.stateSettings) { if self.tournament.sharing == nil {
Label("Tournoi", systemImage: "trash") Button {
} navigation.path.append(Screen.stateSettings)
} label: {
Button { Label("Clôture du tournoi", systemImage: "stop.fill")
navigation.path.append(Screen.stateSettings) Text("Annuler, supprimer ou terminer le tournoi")
} label: { }
Label("Clôture du tournoi", systemImage: "stop.fill") } else {
Text("Annuler, supprimer ou terminer le tournoi") Button {
//todo RAZ se retirer du partage
} label: {
Label("Quitter la supervision", systemImage: "person.crop.circle.badge.minus")
}
} }
} label: { } label: {
LabelOptions() LabelOptions()
.popoverTip(tournamentRunningTip) .popoverTip(tournamentRunningTip)

@ -89,7 +89,7 @@ struct LoginView: View {
} description: { } description: {
Text("Vous pourrez ensuite vous connecter ici. N'oubliez pas de vérifiez vos spams !") Text("Vous pourrez ensuite vous connecter ici. N'oubliez pas de vérifiez vos spams !")
} actions: { } actions: {
SupportButtonView(contentIsUnavailable: true) SupportButtonView(supportButtonType: .contentIsUnavailable)
} }
} }
} }

@ -33,7 +33,13 @@ struct ShareModelView<T: SyncedStorable> : View {
.listStyle(PlainListStyle()) .listStyle(PlainListStyle())
.navigationTitle("Partage") .navigationTitle("Partage")
} else { } else {
ContentUnavailableView("Si vous souhaitez partager votre tournoi avec d'autres utilisateurs, veuillez contacter notre support", image: "person.crop.circle.badge.xmark") ContentUnavailableView {
Label("Aucun superviseurs", systemImage: "person.crop.circle.badge.xmark")
} description: {
Text("Si vous souhaitez partager votre tournoi avec d'autres utilisateurs, veuillez contacter notre support")
} actions: {
SupportButtonView(supportButtonType: .supervisorRequest)
}
} }
}.onAppear { }.onAppear {

Loading…
Cancel
Save