public IActionResult Login(ClientUser cUser) { try { if (ModelState.IsValid) { User user = new User(cUser.Username); if (cUser.CompareCredentials(user)) { SessionUtils.AuthenticateSession(HttpContext.Session, cUser); return(RedirectToAction("Index", "Home")); } else { throw new BTPBInvalidPasswordException(); } } else { throw new DBReadException(); } } catch (BTPBInvalidPasswordException ex) { return(RedirectToAction("Login", "Home", new { fail = true, message = "Mot de passe incorrect" })); } catch (BTPBInvalidUsernameException ex) { return(RedirectToAction("Login", "Home", new { fail = true, message = "Votre nom d'utilisateur ne correspond pas à votre ID client" })); } catch (BTPBException ex) { return(RedirectToAction("Login", "Home", new { fail = true, message = "Vos identifants sont incorrectes" })); } }