Esempio n. 1
0
    private bool ValidateUserAdmin(string login, string password)
    {
        ClubContactContext db = new ClubContactContext();

        try
        {
            //on va chercher le membre si celui-ci n'est pas supprimé
            CompteAdmin admin = db.CompteAdmins.Where(m => m.nomCompte.ToLower() == login.ToLower()).FirstOrDefault();

            if (admin != null)
            {
                //on vérifie si le mdp qu'il a entré est égal au mdp de la BD
                if (Membre.hashedPwd(password).Equals(admin.motDePasseHashe))
                {
                    return(true);
                }
            }
        }
        catch (Exception e)
        {
            //Renvoyer un message d'erreur dans Elmah, mais on fait comme si la connexion n'as simplement pas fonctionner au niveau de l'utilisateur.
            Elmah.ErrorSignal.FromCurrentContext().Raise(
                new Exception("Action: ValidateUser, Contrôleur: Authentification ; Erreur potentielle: Requête LINQ n'a pas fonctionnée. ; login : "******".", e)
                );
            ModelState.AddModelError(string.Empty, "Une erreur s'est produite lors de la connexion, veuillez réessayer.");
        }


        return(false);
    }
Esempio n. 2
0
        public ActionResult Edit(CompteAdmin compteAdmin)
        {
            if (ModelState.IsValid)
            {
                if (compteAdmin.noCompteAdmin == 0)
                {
                    db.Entry(compteAdmin).State = EntityState.Added;
                }
                else
                {
                    if (compteAdmin.motDePasseHashe == "" || compteAdmin.motDePasseHashe == null)
                    {
                        compteAdmin.motDePasseHashe = db.CompteAdmins.Where(m => m.noCompteAdmin == compteAdmin.noCompteAdmin).Select(m => m.motDePasseHashe).FirstOrDefault();
                    }

                    db.Entry(compteAdmin).State = EntityState.Modified;
                }

                db.SaveChanges();
            }
            else
            {
                return(View("Edit", compteAdmin));
            }

            return(RedirectToAction("Index", "CompteAdmin"));
        }
Esempio n. 3
0
        public ActionResult Create()
        {
            CompteAdmin nouveauCompteAdmin = new CompteAdmin();

            nouveauCompteAdmin.permission = db.NiveauDePermissionAdmins.Where(m => m.nomNiveauDePermissionAdmin == "Limité").FirstOrDefault();

            ViewBagNecessaireAdmin(nouveauCompteAdmin);

            return(View("Edit", nouveauCompteAdmin));
        }
Esempio n. 4
0
        public void ViewBagNecessaireAdmin(CompteAdmin compteAdmin)
        {
            if (compteAdmin.noCompteAdmin == 0)
            {
                ViewBag.Create = true;
            }
            else
            {
                ViewBag.Create = false;
            }

            ViewBag.niveauxPermission = new SelectList(db.NiveauDePermissionAdmins, "noNiveauDePermissionAdmin", "nomNiveauDePermissionAdmin", compteAdmin.noPermission);
        }
Esempio n. 5
0
        public ActionResult DeleteConfirmed(CompteAdmin compteASupprimer)
        {
            CompteAdmin leCompteAdmin = db.CompteAdmins.Where(m => m.noCompteAdmin == compteASupprimer.noCompteAdmin).FirstOrDefault();

            if (leCompteAdmin == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.NotFound));
            }

            db.CompteAdmins.Remove(leCompteAdmin);

            db.SaveChanges();

            return(RedirectToAction("Index"));
        }
Esempio n. 6
0
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.NotFound));
            }

            CompteAdmin leCompteAdmin = db.CompteAdmins.Where(m => m.noCompteAdmin == id).FirstOrDefault();

            if (leCompteAdmin == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.NotFound));
            }

            ViewBagNecessaireAdmin(leCompteAdmin);

            return(View("Edit", leCompteAdmin));
        }
Esempio n. 7
0
        public ActionResult ModifierMotDePasse(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.NotFound));
            }

            CompteAdmin compteAdminCo = db.CompteAdmins.Where(m => m.nomCompte == id).FirstOrDefault();

            if (compteAdminCo == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.NotFound));
            }

            if (compteAdminCo.nomCompte != User.Identity.Name)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.Unauthorized));
            }


            return(View("ModifierMotDePasse", compteAdminCo));
        }
Esempio n. 8
0
        public ActionResult ModifierMotDePasse(CompteAdmin compteAdmin)
        {
            if (ModelState.IsValid)
            {
                if (compteAdmin.motDePasseHashe == "" || compteAdmin.motDePasseHashe == null)
                {
                    compteAdmin.motDePasseHashe = db.CompteAdmins.Where(m => m.noCompteAdmin == compteAdmin.noCompteAdmin).Select(m => m.motDePasseHashe).FirstOrDefault();
                }

                db.Entry(compteAdmin).State = EntityState.Modified;

                db.SaveChanges();
            }
            else
            {
                return(View("Edit", compteAdmin));
            }

            TempData["motDePasseAdminSauvegarder"] = "Votre mot de passe a bien été sauvegardé.";
            TempData.Keep();

            return(RedirectToAction("ModifierMotDePasse", "CompteAdmin"));
        }
Esempio n. 9
0
        public ActionResult DesactiverCompte(int noMembreDesactiver, int noSignalement)
        {
            Membre mem = db.Membres.Where(m => m.noMembre == noMembreDesactiver).Include(p => p.listePhotosMembres).Include(a => a.listeActivitesOrganises)
                         .Include(a => a.listeHobbies).Include(a => a.listeRaisonsSurSite).Include(a => a.listeDeVisitesDeMonProfil)
                         .FirstOrDefault();
            List <Activite> activites = db.Activites.Where(a => a.noMembreOrganisateur == mem.noMembre).ToList();
            List <Photo>    photos    = db.Photos.Where(p => p.noMembre == mem.noMembre).ToList();

            List <Visite> visites = db.Visites.Where(p => p.noMembreVisite == mem.noMembre || p.noMembreVisiteur == mem.noMembre).ToList();

            if (mem == null)
            {
                return(HttpNotFound());
            }
            else
            {
                mem.dateSuppressionDuCompte = DateTime.Now;
                mem.compteSupprimeParAdmin  = true;

                //On annule chacune de ses activites FUTURES.
                foreach (Activite a in mem.listeActivitesOrganises)
                {
                    if (a.date > DateTime.Now)
                    {
                        Activite acti;
                        Utilitaires.AnnulerActivite(a.noActivite, null, out acti);
                    }
                }

                //On retire sa participation à tous les activités FUTURES.
                foreach (Activite a in mem.listeActivites)
                {
                    if (a.date > DateTime.Now)
                    {
                        Utilitaires.ParticiperActivite(a.noActivite, noMembreDesactiver);
                    }
                }

                db.SaveChanges();
            }

            CompteAdmin      compteAdminTraiteur = db.CompteAdmins.Where(m => m.nomCompte == User.Identity.Name).FirstOrDefault();
            ActionTraitement actionCompteBloque  = db.ActionTraitements.Where(m => m.nomActionTraitement == "Compte bloqué").FirstOrDefault();


            Signalement leSignalement = db.Signalements.Where(m => m.noSignalement == noSignalement).FirstOrDefault();

            leSignalement.dateSuiviNecessaire   = null;
            leSignalement.etatSignalementActuel = db.EtatSignalements.Where(m => m.nomEtatSignalement == "Traité").FirstOrDefault();
            leSignalement.adminQuiTraite        = compteAdminTraiteur;


            //Envoie d'un message automatisé de traitement
            Message messageAccuseApresTraitement = new Message();

            messageAccuseApresTraitement.dateEnvoi      = DateTime.Now;
            messageAccuseApresTraitement.sujetMessage   = "Votre signalement contre " + leSignalement.membreContreQuiEstPlainte.surnom + " a été traité.";
            messageAccuseApresTraitement.contenuMessage = "Votre signalement contre " + leSignalement.membreContreQuiEstPlainte.surnom + " a bien été traité, et une action a eu lieu afin que le comportement" +
                                                          " fautif ne se reproduise plus. Merci d'aider à rendre Club Contact un environnement sécuritaire!" + Environment.NewLine + Environment.NewLine + "- Le service d'administration de Club Contact";
            messageAccuseApresTraitement.lu               = false;
            messageAccuseApresTraitement.membreReceveur   = leSignalement.membreFaisantPlainte;
            messageAccuseApresTraitement.noMembreReceveur = leSignalement.membreFaisantPlainte.noMembre;

            db.Messages.Add(messageAccuseApresTraitement);
            db.SaveChanges();
            //Fin envoie d'un message automatisé de traitement

            TraitementSignalement leTraitementEffectuer = new TraitementSignalement();

            leTraitementEffectuer.compteAdminTraiteur       = compteAdminTraiteur;
            leTraitementEffectuer.noCompteAdminTraiteur     = compteAdminTraiteur.noCompteAdmin;
            leTraitementEffectuer.actionTraitement          = actionCompteBloque;
            leTraitementEffectuer.noActionTraitement        = actionCompteBloque.noActionTraitement;
            leTraitementEffectuer.dateTraitementSignalement = DateTime.Now;
            leTraitementEffectuer.noSignalementLie          = leSignalement.noSignalement;
            leTraitementEffectuer.signalementLie            = leSignalement;

            db.TraitementSignalements.Add(leTraitementEffectuer);

            List <Signalement> lesSignalementDuMembreQuiSeraDesactiver = db.Signalements.Where(m => m.noMembreContreQuiEstPlainte == noMembreDesactiver && m.noSignalement != leSignalement.noSignalement).ToList();

            foreach (Signalement s in lesSignalementDuMembreQuiSeraDesactiver)
            {
                s.dateSuiviNecessaire   = null;
                s.etatSignalementActuel = db.EtatSignalements.Where(m => m.nomEtatSignalement == "Traité").FirstOrDefault();
                if (s.adminQuiTraite == null && s.noCompteAdmin == null)
                {
                    s.adminQuiTraite = compteAdminTraiteur;
                    s.noCompteAdmin  = compteAdminTraiteur.noCompteAdmin;
                }

                TraitementSignalement traitementEffectureSurAutre = new TraitementSignalement();
                traitementEffectureSurAutre.compteAdminTraiteur       = compteAdminTraiteur;
                traitementEffectureSurAutre.noCompteAdminTraiteur     = compteAdminTraiteur.noCompteAdmin;
                traitementEffectureSurAutre.actionTraitement          = actionCompteBloque;
                traitementEffectureSurAutre.noActionTraitement        = actionCompteBloque.noActionTraitement;
                traitementEffectureSurAutre.dateTraitementSignalement = DateTime.Now;
                traitementEffectureSurAutre.noSignalementLie          = s.noSignalement;
                traitementEffectureSurAutre.signalementLie            = s;

                db.TraitementSignalements.Add(traitementEffectureSurAutre);
            }



            db.SaveChanges();

            return(RedirectToAction("Gestion", "Admin", new { tab = 2 }));
        }
Esempio n. 10
0
        public ActionResult Gestion(int?page, GestionViewModel gestionViewModel, int?tab, int?vientDePagination, int?noMembreDesactiver, int?noSignalementLie, string btnSubmit)
        {
            if (noMembreDesactiver != null)
            {
                return(RedirectToAction("DesactiverCompte", new { noMembreDesactiver = noMembreDesactiver, noSignalement = noSignalementLie }));
            }
            else if (btnSubmit != null)
            {
                if (btnSubmit.Contains("ChangerEtatPlainte"))
                {
                    int noSignalement    = int.Parse(btnSubmit.Remove(0, 18));
                    int indexSignalement = gestionViewModel.lesSignalement.FindIndex(a => a.noSignalement == noSignalement);

                    CompteAdmin adminQuiTraite = db.CompteAdmins.Where(a => a.nomCompte == User.Identity.Name.ToString()).FirstOrDefault();

                    int noSignalementActuel = gestionViewModel.lesSignalement[indexSignalement].noEtatSignalementActuel;

                    if (db.EtatSignalements.Where(m => m.noEtatSignalement == noSignalementActuel).FirstOrDefault().nomEtatSignalement == "Assigné")
                    {
                        gestionViewModel.lesSignalement[indexSignalement].adminQuiTraite = adminQuiTraite;
                        gestionViewModel.lesSignalement[indexSignalement].noCompteAdmin  = adminQuiTraite.noCompteAdmin;
                    }
                    else if (db.EtatSignalements.Where(m => m.noEtatSignalement == noSignalementActuel).FirstOrDefault().nomEtatSignalement == "Traité")
                    {
                        int    noMembreContreQuiEstPlainte = gestionViewModel.lesSignalement[indexSignalement].noMembreContreQuiEstPlainte;
                        int    noMembreQuiSePlaint         = gestionViewModel.lesSignalement[indexSignalement].noMembreFaisantPlainte;
                        Membre leMembreContreQuiEstPlainte = db.Membres.Where(m => m.noMembre == noMembreContreQuiEstPlainte).FirstOrDefault();
                        Membre leMembreQuiSePlaint         = db.Membres.Where(m => m.noMembre == noMembreQuiSePlaint).FirstOrDefault();

                        //Envoie d'un message automatisé de traitement
                        Message messageAccuseApresTraitement = new Message();
                        messageAccuseApresTraitement.dateEnvoi      = DateTime.Now;
                        messageAccuseApresTraitement.sujetMessage   = "Votre signalement contre " + leMembreContreQuiEstPlainte.surnom + " a été traité.";
                        messageAccuseApresTraitement.contenuMessage = "Votre signalement contre " + leMembreContreQuiEstPlainte.surnom + " a bien été traité, et une action a eu lieu afin que le comportement" +
                                                                      " fautif ne se reproduise plus. Merci d'aider à rendre Club Contact un environnement sécuritaire!" + Environment.NewLine + Environment.NewLine + "- Le service d'administration de Club Contact";
                        messageAccuseApresTraitement.lu               = false;
                        messageAccuseApresTraitement.membreReceveur   = leMembreQuiSePlaint;
                        messageAccuseApresTraitement.noMembreReceveur = leMembreQuiSePlaint.noMembre;

                        db.Messages.Add(messageAccuseApresTraitement);
                        db.SaveChanges();
                    }
                    int              noEtatSignalementActuel      = gestionViewModel.lesSignalement[indexSignalement].noEtatSignalementActuel;
                    string           nomEtatSignalementActuel     = db.EtatSignalements.Where(m => m.noEtatSignalement == noEtatSignalementActuel).Select(m => m.nomEtatSignalement).FirstOrDefault();
                    ActionTraitement actionTraitementEtatModifier = db.ActionTraitements.Where(m => m.nomActionTraitement == "État de la plainte modifié à: " + nomEtatSignalementActuel).FirstOrDefault();

                    TraitementSignalement leTraitementEffectuer = new TraitementSignalement();
                    leTraitementEffectuer.compteAdminTraiteur       = adminQuiTraite;
                    leTraitementEffectuer.noCompteAdminTraiteur     = adminQuiTraite.noCompteAdmin;
                    leTraitementEffectuer.actionTraitement          = actionTraitementEtatModifier;
                    leTraitementEffectuer.noActionTraitement        = actionTraitementEtatModifier.noActionTraitement;
                    leTraitementEffectuer.dateTraitementSignalement = DateTime.Now;
                    leTraitementEffectuer.noSignalementLie          = gestionViewModel.lesSignalement[indexSignalement].noSignalement;
                    leTraitementEffectuer.signalementLie            = gestionViewModel.lesSignalement[indexSignalement];

                    db.TraitementSignalements.Add(leTraitementEffectuer);

                    //Retrait du nouveau signalement
                    CommentaireSignalement leNouveauCommentaire = gestionViewModel.lesSignalement[indexSignalement].lesCommentairesSurCeSignalement.Last();
                    gestionViewModel.lesSignalement[indexSignalement].lesCommentairesSurCeSignalement.Remove(leNouveauCommentaire);
                    db.Entry(leNouveauCommentaire).State = EntityState.Detached;

                    foreach (CommentaireSignalement c in gestionViewModel.lesSignalement[indexSignalement].lesCommentairesSurCeSignalement)
                    {
                        db.Entry(c).State = EntityState.Unchanged;
                    }

                    db.Entry(gestionViewModel.lesSignalement[indexSignalement]).State = EntityState.Modified;

                    try
                    {
                        db.SaveChanges();
                    }
                    catch (Exception e)
                    {
                        Elmah.ErrorSignal.FromCurrentContext().Raise(Utilitaires.templateException("Gestion", "Admin", "Mise à jour de la base de données à la suite de la modification de l'état d'un signalement à échoué.", e, null, "post"));
                        TempData["gestionViewModelPOST"] = gestionViewModel;

                        TempData["Erreur"] = "Une erreur est survenu lors du changement de l'état de la plainte, veuillez réessayer.";
                        TempData.Keep();

                        return(RedirectToAction("Gestion", new { page = page, tab = tab, vientDePagination = vientDePagination }));
                    }
                }
                else if (btnSubmit.Contains("commentaireSignalement"))
                {
                    int index;
                    if (int.TryParse(btnSubmit.Substring(22), out index))
                    {
                        CommentaireSignalement leNouveauCommentaire = gestionViewModel.lesSignalement[index].lesCommentairesSurCeSignalement.Last();

                        if (leNouveauCommentaire.noCommentaireSignalement == 0 && leNouveauCommentaire.commentaireSignalement != "" && leNouveauCommentaire.commentaireSignalement != null)
                        {
                            leNouveauCommentaire.dateCommentaire = DateTime.Now;

                            db.CommentaireSignalements.Add(leNouveauCommentaire);
                            //db.Entry(leNouveauCommentaire).State = EntityState.Added;

                            db.SaveChanges();
                        }
                    }
                }
            }

            TempData["gestionViewModelPOST"] = gestionViewModel;

            return(RedirectToAction("Gestion", new { page = page, tab = tab, vientDePagination = vientDePagination }));
        }
Esempio n. 11
0
    public ActionResult LoginAdmin(LoginViewModel model, string returnUrl)
    {
        ClubContactContext db = new ClubContactContext();

        ViewBag.ReturnUrl = returnUrl;

        ViewBag.Title = "Se connecter administrateur";
        if (!ModelState.IsValid)
        {
            return(View(model));
        }
        if (!ValidateUserAdmin(model.Login, model.Password))
        {
            ModelState.AddModelError(string.Empty, "Le nom d'utilisateur ou le mot de passe est incorrect.");
            return(View(model));
        }

        // L'authentification est réussie,
        // injecter les informations utilisateur dans le cookie d'authentification :
        var userClaims = new List <Claim>();

        try
        {
            //on trouve le membre
            CompteAdmin leCompte = db.CompteAdmins
                                   .Where(m => m.nomCompte.ToLower() == model.Login.ToLower())
                                   .FirstOrDefault();

            if (leCompte != null)
            {
                // Identifiant utilisateur :
                userClaims.Add(new Claim(ClaimTypes.Name, leCompte.nomCompte));
                userClaims.Add(new Claim(ClaimTypes.NameIdentifier, leCompte.nomCompte));
            }
            else
            {
                throw new Exception("Erreur: Le membre recherché est égale à null à la suite de la requête LINQ.");
            }

            //-------------------------création du cookie-------------------------------------------
            HttpCookie myCookie = new HttpCookie("Admin");

            myCookie["niveauDePermission"] = leCompte.permission.nomNiveauDePermissionAdmin.ToString();

            if (model.seSouvenirDeMoi)
            {
                myCookie.Expires = new System.DateTime(2020, 1, 1);
            }

            Response.Cookies.Add(myCookie);
        }
        catch (Exception e)
        {
            Exception exc = new Exception("Action: Login (POST), Contrôleur: Authentification ; Erreur potentielle: Requête LINQ n'a pas fonctionnée. ; login Membre : " + model.Login + ".", e);
            Elmah.ErrorSignal.FromCurrentContext().Raise(exc);

            ModelState.AddModelError(string.Empty, "Une erreur s'est produite lors de la connexion, veuillez réessayer.");
            return(View(model));
        }

        // Rôles utilisateur :
        userClaims.AddRange(LoadRoles(model.Login, true));
        var claimsIdentity        = new ClaimsIdentity(userClaims, DefaultAuthenticationTypes.ApplicationCookie);
        var ctx                   = Request.GetOwinContext();
        var authenticationManager = ctx.Authentication;
        var properties            = new AuthenticationProperties {
            IsPersistent = model.seSouvenirDeMoi
        };

        authenticationManager.SignIn(properties, claimsIdentity);

        //?? à revoir une fois que ça fonctionne, avec la prof
        // Rediriger vers l'url d'origine :
        if (Url.IsLocalUrl(ViewBag.ReturnUrl))
        {
            return(Redirect(ViewBag.ReturnUrl));
        }

        // Par défaut, rediriger vers la page d'accueil :
        return(RedirectToAction("Gestion", "Admin"));
    }
Esempio n. 12
0
        public ActionResult Send(Message message, int?noSignalementLie)
        {
            message.dateEnvoi = DateTime.Now;
            message.lu        = false;

            message.dansCorbeilleCoteEnvoyeur = false;
            message.dansCorbeilleCoteReceveur = false;

            message.supprimerCoteEnvoyeur = false;
            message.supprimerCoteReceveur = false;

            bool messageVientDeAdmin = true;

            //Si c'est pas l'admin qui l'envoie, on s'en fout du principe de liste noire
            if (message.noMembreEnvoyeur != null)
            {
                messageVientDeAdmin = false;

                message.membreEnvoyeur = db.Membres.Where(m => m.noMembre == message.noMembreEnvoyeur).FirstOrDefault();
                message.membreReceveur = db.Membres.Where(m => m.noMembre == message.noMembreReceveur).FirstOrDefault();

                //Si le membre qui va recevoir le message a le membres qui l'a envoyé dans sa liste noire, alors le message sera automatiquement supprimé de son côté
                //Du côté envoyeur, il va voir comme s'il l'a envoyé
                if (message.membreReceveur.listeNoire.Contains(message.membreEnvoyeur))
                {
                    message.dansCorbeilleCoteReceveur = true;
                    message.supprimerCoteReceveur     = true;
                }
            }

            if (ModelState.IsValid)
            {
                try
                {
                    db.Messages.Add(message);

                    db.SaveChanges();

                    if (!messageVientDeAdmin)
                    {
                        return(RedirectToAction("Inbox", "Messagerie"));
                    }
                    else
                    {
                        if (noSignalementLie != null)
                        {
                            CompteAdmin adminConnectee = db.CompteAdmins.Where(m => m.nomCompte == User.Identity.Name).FirstOrDefault();

                            ActionTraitement actionTraitement = db.ActionTraitements.Where(m => m.nomActionTraitement == "Avertissement envoyé").FirstOrDefault();

                            Signalement leSignalement = db.Signalements.Where(m => m.noSignalement == noSignalementLie).FirstOrDefault();
                            leSignalement.dateSuiviNecessaire   = DateTime.Now.AddDays(7);
                            leSignalement.etatSignalementActuel = db.EtatSignalements.Where(m => m.nomEtatSignalement == "En suivi").FirstOrDefault();
                            leSignalement.adminQuiTraite        = adminConnectee;

                            TraitementSignalement nouveauTraitementFait = new TraitementSignalement();
                            nouveauTraitementFait.dateTraitementSignalement = DateTime.Now;
                            nouveauTraitementFait.noSignalementLie          = leSignalement.noSignalement;
                            nouveauTraitementFait.signalementLie            = leSignalement;
                            nouveauTraitementFait.compteAdminTraiteur       = adminConnectee;
                            nouveauTraitementFait.noCompteAdminTraiteur     = adminConnectee.noCompteAdmin;
                            nouveauTraitementFait.messageLie = message;
                            //nouveauTraitementFait.noMessageLie = message.noMessage;
                            nouveauTraitementFait.actionTraitement   = actionTraitement;
                            nouveauTraitementFait.noActionTraitement = actionTraitement.noActionTraitement;

                            db.TraitementSignalements.Add(nouveauTraitementFait);

                            db.SaveChanges();
                        }

                        return(RedirectToAction("Gestion", "Admin", new { tab = 2 }));
                    }
                }
                catch (Exception e)
                {
                    Dictionary <string, string> parametres = new Dictionary <string, string>()
                    {
                        { "messageContenu", message.contenuMessage.ToString() },
                        { "sujetMessage", message.sujetMessage.ToString() }
                    };
                    throw LesUtilitaires.Utilitaires.templateException("Send", "Messagerie", "Ajout d'un message à la BD n'a pas fonctionné.",
                                                                       e, parametres, "post");
                }
            }

            if (!messageVientDeAdmin)
            {
                int noMembreCo;
                verifierSiCookieNoMembreExiste(out noMembreCo);

                SetterViewDataListeContact(noMembreCo);
            }
            return(View("Send", message));
        }