public ActionResult ContactArbitre(int conflictId, string text) { Message m = new Message(); m.CreateDate = DateTime.Now; m.IdConflict = conflictId; m.IdCreatedBy = User.Identity.GetId(); m.Text = text; m = BLLConflicts.AddMessage(m); var conflict = BLLConflicts.GetConflictForArbitration(conflictId); if (User.Identity.Email() == conflict.Arbiter.Email) { foreach (var item in conflict.UsersInConflicts) { if (!item.IsRepresented) { Guid guid = Guid.NewGuid(); FastArbitreEmails.SendMessageToArbiter(item.User.Email, conflict.Arbiter.DisplayName, conflictId, Url.Action("Messages", "Arbitre", new { conflictId = conflictId }, this.Request.Url.Scheme), Url.Action("Index", "Email", new { id = guid.ToString() }, this.Request.Url.Scheme), guid); } } } else { foreach (var item in conflict.UsersInConflicts) { if (!item.IsRepresented && item.IdUser != User.Identity.GetId()) { Guid guid = Guid.NewGuid(); FastArbitreEmails.SendMessageToArbiter(item.User.Email, User.Identity.FirstName() + " " + User.Identity.LastName(), conflictId, Url.Action("Messages", "Arbitre", new { conflictId = conflictId }, this.Request.Url.Scheme), Url.Action("Index", "Email", new { id = guid.ToString() }, this.Request.Url.Scheme), guid); } } Guid gud = Guid.NewGuid(); FastArbitreEmails.SendMessageToArbiter(conflict.Arbiter.Email, User.Identity.FirstName() + " " + User.Identity.LastName(), conflictId, Url.Action("Messages", "Arbitre", new { conflictId = conflictId }, this.Request.Url.Scheme), Url.Action("Index", "Email", new { id = gud.ToString() }, this.Request.Url.Scheme), gud); } TempData["Success"] = "Votre message a bien été envoyé!"; return(RedirectToAction("Conflict", "Viewer", new { conflictId = conflictId })); }