You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
2.3 KiB
68 lines
2.3 KiB
//
|
|
// AccountView.swift
|
|
// PadelClub
|
|
//
|
|
// Created by Laurent Morvillier on 21/02/2024.
|
|
//
|
|
|
|
import SwiftUI
|
|
import LeStorage
|
|
import PadelClubData
|
|
|
|
struct AccountView: View {
|
|
|
|
@Environment(\.dismiss) private var dismiss
|
|
@EnvironmentObject var dataStore: DataStore
|
|
|
|
var user: CustomUser
|
|
var handler: () -> ()
|
|
|
|
var body: some View {
|
|
Form {
|
|
#if DEBUG
|
|
if let purchase = Guard.main.currentBestPurchase, let item = StoreItem(rawValue: purchase.productId) {
|
|
PurchaseView(purchaseRow: PurchaseRow(id: purchase.id, name: purchase.productId, item: item))
|
|
}
|
|
#endif
|
|
Section {
|
|
NavigationLink("Changer de mot de passe") {
|
|
ChangePasswordView()
|
|
}
|
|
}
|
|
Section {
|
|
RowButtonView("Déconnexion", role: .destructive) {
|
|
DataStore.shared.disconnect()
|
|
dismiss()
|
|
// handler()
|
|
}
|
|
}
|
|
Section {
|
|
NavigationLink {
|
|
List {
|
|
Section {
|
|
Text("Attention la suppression de votre compte est irréversible. Vous perdrez l'accès à tous vos tournois créés jusqu'à présent.").foregroundStyle(.logoRed).bold()
|
|
}
|
|
|
|
RowButtonView("Supprimer mon compte", role: .destructive, confirmationMessage: "Voulez-vous vraiment supprimer définitivement votre compte et ses données associées ?") {
|
|
DataStore.shared.deleteAccount()
|
|
}
|
|
}
|
|
.navigationTitle("Supprimer votre compte")
|
|
.navigationBarTitleDisplayMode(.inline)
|
|
.toolbarBackground(.visible, for: .navigationBar)
|
|
.toolbarBackground(.logoRed, for: .navigationBar)
|
|
} label: {
|
|
Text("Suppression du compte")
|
|
}
|
|
} header: {
|
|
Text("Accéder à l'écran de suppression de compte.")
|
|
}
|
|
}.navigationTitle(user.username)
|
|
}
|
|
}
|
|
|
|
//#Preview {
|
|
// AccountView(user: User(username: "coco", email: ",mail", firstName: "first", lastName: "last", phone: "44444", country: "US")) {
|
|
//
|
|
// }
|
|
//}
|
|
|