Show proper error message when a new user fails

multistore
Laurent 1 year ago
parent af11629e03
commit 8116c0598a
  1. 4
      PadelClub.xcodeproj/project.pbxproj
  2. 7
      PadelClub/Views/User/ChangePasswordView.swift
  3. 17
      PadelClub/Views/User/LoginView.swift
  4. 42
      PadelClub/Views/User/MainUserView.swift
  5. 2
      PadelClub/Views/User/UserCreationView.swift

@ -41,7 +41,6 @@
C4A47DA62B83948E00ADC637 /* LoginView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A47DA52B83948E00ADC637 /* LoginView.swift */; }; C4A47DA62B83948E00ADC637 /* LoginView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A47DA52B83948E00ADC637 /* LoginView.swift */; };
C4A47DA92B85F82100ADC637 /* ChangePasswordView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A47DA82B85F82100ADC637 /* ChangePasswordView.swift */; }; C4A47DA92B85F82100ADC637 /* ChangePasswordView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A47DA82B85F82100ADC637 /* ChangePasswordView.swift */; };
C4A47DAD2B85FCCD00ADC637 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A47DAC2B85FCCD00ADC637 /* User.swift */; }; C4A47DAD2B85FCCD00ADC637 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A47DAC2B85FCCD00ADC637 /* User.swift */; };
C4A47DB12B86375E00ADC637 /* MainUserView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A47DB02B86375E00ADC637 /* MainUserView.swift */; };
C4A47DB32B86387500ADC637 /* AccountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A47DB22B86387500ADC637 /* AccountView.swift */; }; C4A47DB32B86387500ADC637 /* AccountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A47DB22B86387500ADC637 /* AccountView.swift */; };
C4EC6F572BE92CAC000CEAB4 /* local.plist in Resources */ = {isa = PBXBuildFile; fileRef = C4EC6F562BE92CAC000CEAB4 /* local.plist */; }; C4EC6F572BE92CAC000CEAB4 /* local.plist in Resources */ = {isa = PBXBuildFile; fileRef = C4EC6F562BE92CAC000CEAB4 /* local.plist */; };
C4EC6F592BE92D88000CEAB4 /* PListReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4EC6F582BE92D88000CEAB4 /* PListReader.swift */; }; C4EC6F592BE92D88000CEAB4 /* PListReader.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4EC6F582BE92D88000CEAB4 /* PListReader.swift */; };
@ -323,7 +322,6 @@
C4A47DA52B83948E00ADC637 /* LoginView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginView.swift; sourceTree = "<group>"; }; C4A47DA52B83948E00ADC637 /* LoginView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginView.swift; sourceTree = "<group>"; };
C4A47DA82B85F82100ADC637 /* ChangePasswordView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChangePasswordView.swift; sourceTree = "<group>"; }; C4A47DA82B85F82100ADC637 /* ChangePasswordView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChangePasswordView.swift; sourceTree = "<group>"; };
C4A47DAC2B85FCCD00ADC637 /* User.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = "<group>"; }; C4A47DAC2B85FCCD00ADC637 /* User.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = "<group>"; };
C4A47DB02B86375E00ADC637 /* MainUserView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainUserView.swift; sourceTree = "<group>"; };
C4A47DB22B86387500ADC637 /* AccountView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountView.swift; sourceTree = "<group>"; }; C4A47DB22B86387500ADC637 /* AccountView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountView.swift; sourceTree = "<group>"; };
C4EC6F562BE92CAC000CEAB4 /* local.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = local.plist; sourceTree = "<group>"; }; C4EC6F562BE92CAC000CEAB4 /* local.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = local.plist; sourceTree = "<group>"; };
C4EC6F582BE92D88000CEAB4 /* PListReader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PListReader.swift; sourceTree = "<group>"; }; C4EC6F582BE92D88000CEAB4 /* PListReader.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PListReader.swift; sourceTree = "<group>"; };
@ -745,7 +743,6 @@
C4A47DB22B86387500ADC637 /* AccountView.swift */, C4A47DB22B86387500ADC637 /* AccountView.swift */,
C4A47DA82B85F82100ADC637 /* ChangePasswordView.swift */, C4A47DA82B85F82100ADC637 /* ChangePasswordView.swift */,
C4A47DA52B83948E00ADC637 /* LoginView.swift */, C4A47DA52B83948E00ADC637 /* LoginView.swift */,
C4A47DB02B86375E00ADC637 /* MainUserView.swift */,
C4A47D862B7BA36D00ADC637 /* UserCreationView.swift */, C4A47D862B7BA36D00ADC637 /* UserCreationView.swift */,
); );
path = User; path = User;
@ -1491,7 +1488,6 @@
FF9268012BCE94920080F940 /* SeedsCallingView.swift in Sources */, FF9268012BCE94920080F940 /* SeedsCallingView.swift in Sources */,
FF9268092BCEDC2C0080F940 /* CallView.swift in Sources */, FF9268092BCEDC2C0080F940 /* CallView.swift in Sources */,
FF5D0D742BB41DF8005CB568 /* Color+Extensions.swift in Sources */, FF5D0D742BB41DF8005CB568 /* Color+Extensions.swift in Sources */,
C4A47DB12B86375E00ADC637 /* MainUserView.swift in Sources */,
FF7091682B90F79F00AB08DA /* TournamentCellView.swift in Sources */, FF7091682B90F79F00AB08DA /* TournamentCellView.swift in Sources */,
FF6EC9042B9479F500EA7F5A /* Sequence+Extensions.swift in Sources */, FF6EC9042B9479F500EA7F5A /* Sequence+Extensions.swift in Sources */,
FF9267FA2BCE78EC0080F940 /* CashierDetailView.swift in Sources */, FF9267FA2BCE78EC0080F940 /* CashierDetailView.swift in Sources */,

@ -53,12 +53,7 @@ struct ChangePasswordView: View {
self.isLoading = false self.isLoading = false
} catch { } catch {
Logger.error(error) Logger.error(error)
switch error { self.errorMessage = ErrorUtils.message(error: error)
case ServiceError.responseError(let reason):
self.errorMessage = reason
default:
self.errorMessage = error.localizedDescription
}
} }
} }

@ -127,13 +127,7 @@ struct LoginView: View {
self.handler(user) self.handler(user)
} catch { } catch {
self.isLoading = false self.isLoading = false
switch error { self.errorText = ErrorUtils.message(error: error)
case ServiceError.responseError(let reason):
self.errorText = reason
default:
self.errorText = error.localizedDescription
}
Logger.error(error) Logger.error(error)
} }
} }
@ -166,14 +160,7 @@ struct EmailConfirmationView: View {
try await service.forgotPassword(email: self.email) try await service.forgotPassword(email: self.email)
} catch { } catch {
Logger.error(error) Logger.error(error)
self.errorMessage = ErrorUtils.message(error: error)
switch error {
case ServiceError.responseError(let reason):
self.errorMessage = reason
default:
self.errorMessage = error.localizedDescription
}
Logger.log(self.errorMessage)
} }
} }
} }

@ -1,42 +0,0 @@
//
// UserView.swift
// PadelClub
//
// Created by Laurent Morvillier on 21/02/2024.
//
import SwiftUI
import LeStorage
struct MainUserView: View {
@EnvironmentObject var dataStore: DataStore
@State var isConnected: Bool = false
var body: some View {
Group {
if self.isConnected {
AccountView(user: dataStore.user) {
self._checkConnection()
}
} else {
LoginView { user in
self._checkConnection()
}
}
}.onAppear {
self._checkConnection()
}
}
fileprivate func _checkConnection() {
Logger.log("_checkConnection")
self.isConnected = dataStore.user.username.count > 0 && Store.main.hasToken()
}
}
#Preview {
MainUserView()
}

@ -172,7 +172,7 @@ struct UserCreationFormView: View {
} catch { } catch {
self.isLoading = false self.isLoading = false
self.alertMessage = error.localizedDescription self.alertMessage = ErrorUtils.message(error: error)
Logger.error(error) Logger.error(error)
} }
} }

Loading…
Cancel
Save