diff --git a/Sources/justMUSIC/lib/model/mapper/UserMapper.dart b/Sources/justMUSIC/lib/model/mapper/UserMapper.dart index baca8fe..a7d3a24 100644 --- a/Sources/justMUSIC/lib/model/mapper/UserMapper.dart +++ b/Sources/justMUSIC/lib/model/mapper/UserMapper.dart @@ -6,15 +6,15 @@ class UserMapper { SnapshotOptions? options) { final data = snapshot.data(); return User( - data?["uid"], - data?["pseudo"], - data?["country"], - data?["mail"], - data?["profilePicture"], - data?["followers"] as int, - data?["nbCapsules"] as int, - data?["followed"] as int, - data?['friends'] is Iterable ? List.from(data?['friends']) : []); + data?["uid"] ?? "", + data?["pseudo"] ?? "", + data?["country"] ?? "", + data?["mail"] ?? "", + data?["profilePicture"] ?? "", + data?["followers"] ?? 0, + data?["nbCapsules"] ?? 0, + data?["followed"] ?? 0, + data?['friends'] is List ? List.from(data?['friends']) : []); } /* static Map toFirebase(User user) { diff --git a/Sources/justMUSIC/lib/screens/login_screen.dart b/Sources/justMUSIC/lib/screens/login_screen.dart index 16dd4d2..1924761 100644 --- a/Sources/justMUSIC/lib/screens/login_screen.dart +++ b/Sources/justMUSIC/lib/screens/login_screen.dart @@ -1,3 +1,4 @@ +import 'package:firebase_auth/firebase_auth.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; @@ -29,11 +30,11 @@ class _LoginScreenState extends State { await MyApp.userViewModel .login(_userMailTextField.text, _passwordTextField.text); Navigator.pushNamed(context, '/explanation'); - } catch (e) { + } on FirebaseAuthException catch (e) { ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text( - "Erreur: Email ou mot de passe incorrect", + e.message ?? "", style: GoogleFonts.plusJakartaSans( color: Colors.white, fontWeight: FontWeight.w400, diff --git a/Sources/justMUSIC/lib/service/AuthService.dart b/Sources/justMUSIC/lib/service/AuthService.dart index 0baefe0..707a9c5 100644 --- a/Sources/justMUSIC/lib/service/AuthService.dart +++ b/Sources/justMUSIC/lib/service/AuthService.dart @@ -1,6 +1,3 @@ -import 'package:cloud_firestore/cloud_firestore.dart'; - -import '../model/User.dart'; import 'package:firebase_auth/firebase_auth.dart'; import '../main.dart'; @@ -42,12 +39,8 @@ class AuthService { try { await FirebaseAuth.instance .signInWithEmailAndPassword(email: email, password: password); - } on FirebaseAuthException catch (e) { - if (e.code == 'user-not-found') { - throw ('No user found for that email.'); - } else if (e.code == 'wrong-password') { - throw ('Wrong password provided for that user.'); - } + } on FirebaseAuthException { + rethrow; } } diff --git a/Sources/justMUSIC/lib/view_model/UserViewModel.dart b/Sources/justMUSIC/lib/view_model/UserViewModel.dart index 881dda3..29200d2 100644 --- a/Sources/justMUSIC/lib/view_model/UserViewModel.dart +++ b/Sources/justMUSIC/lib/view_model/UserViewModel.dart @@ -33,7 +33,7 @@ class UserViewModel { User data = UserMapper.toModel(user, null); _userCurrent = data; } catch (e) { - throw Exception("Erreur: Email ou mot de passe incorrect"); + rethrow; } }