public ActionResult Inscription([Bind(Include = "ID,Nom,Prenom,Classe,AdresseMail,MotDePasse")] Utilisateur utilisateur)
        {
            if (ModelState.IsValid)
            {
                #region Email déjà utilisé
                var isExist = IsEmailExist(utilisateur.AdresseMail);
                if (isExist == true)
                {
                    ModelState.AddModelError("AdresseMail", "Adresse email déjà utilisée");
                    return(View());
                }
                #endregion

                #region Hasher mot de passe
                utilisateur.MotDePasse = HashingPass.Hash(utilisateur.MotDePasse);
                #endregion

                //Ajout de l'utilisateur une fois les conditions remplies
                db.Utilisateurs.Add(utilisateur);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            else
            {
                return(View());
            }
        }
        public ActionResult Index(Utilisateur utilisateur)
        {
            //On crée une variable "isValid" qui permet de savoir si un utilisateur possède une adresse mail valide sur notre site
            var isValid = db.Utilisateurs.Where(am => am.AdresseMail == utilisateur.AdresseMail).FirstOrDefault();

            //Si on a bien une adresse mail
            if (isValid != null)
            {
                //On compare le mot de passe hashé entré par l'utilisateur et le mot de passe avec lequel il s'est inscrit
                if (string.Compare(HashingPass.Hash(utilisateur.MotDePasse), isValid.MotDePasse) == 0)
                {
                    /*Méthode qui va générer un ticket d'authentification pour l'utilisateur
                     * que l'on stocke par la suite dans un cookie pour le rediriger vers la page du site*/
                    var    ticket          = new FormsAuthenticationTicket("connexionCookie", false, 525600);
                    string encrypt         = FormsAuthentication.Encrypt(ticket);
                    var    connexionCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encrypt)
                    {
                        Expires = DateTime.Now.AddMinutes(5000)
                    };

                    connexionCookie.HttpOnly = true;
                    Response.Cookies.Add(connexionCookie);

                    HttpCookie idUserCookie     = new HttpCookie("idUtilisateurCookie");
                    string     strIdUtilisateur = UtilisateurDAL.getIdUtilisateurFromEmail(utilisateur.AdresseMail).ToString();
                    idUserCookie.Values.Set("idUtilisateur", strIdUtilisateur);
                    idUserCookie.Expires  = DateTime.Now.AddMinutes(5000);
                    idUserCookie.HttpOnly = true;
                    Response.Cookies.Add(idUserCookie);


                    return(RedirectToAction("Index", "BilletRetards"));
                    //TEST
                }
                else
                {
                    ModelState.AddModelError("MotDePasse", "Votre mot de passe est incorrect");
                }
            }
            else
            {
                ModelState.AddModelError("AdresseMail", "L'adresse que vous avez renseignée n'existe pas");
            }
            return(View());
        }