// GET: Chat_Room/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Chat_Room chat_Room = db.Chat_Room.Find(id); Chat_Users user = chat_Room.Users.Single(s => s.User.Email == User.Identity.Name); user.LastView = DateTime.Now; db.SaveChanges(); if (chat_Room == null) { return(HttpNotFound()); } return(View(chat_Room)); }
// GET: Chat_Room/Create public ActionResult Create(int id) { var chat = from ch in db.Chat_Room select ch; var user = db.Users.Single(p => p.Email == User.Identity.Name); var user1 = db.Users.Single(p => p.Id == id); chat = chat.Where(s => s.Users.Any(p => p.User.Id == user1.Id)); chat = chat.Where(s => s.Users.Any(p => p.User.Id == user.Id)); chat = chat.Where(s => s.Users.Count == 2); if (chat.ToList().Count == 1) { return(View("Details", chat.First())); } else { var date = DateTime.Now; Chat_Users u1 = new Chat_Users() { User = user, LastView = date }; Chat_Users u2 = new Chat_Users() { User = user1, LastView = date }; Chat_Room room = new Chat_Room() { LastUpdate = date, Messages = new List <Chat_Message>(), Users = new List <Chat_Users>() }; u1 = db.Chat_Users.Add(u1); u2 = db.Chat_Users.Add(u2); room = db.Chat_Room.Add(room); room.Users.Add(u1); room.Users.Add(u2); UpdateModel(room); db.SaveChanges(); return(Redirect(Url.Action("Details", new { id = chat.First().ID }))); } }
public ActionResult Details(int idr, string Text) { Chat_Room chat_Room = db.Chat_Room.Find(idr); Chat_Users user = chat_Room.Users.Single(s => s.User.Email == User.Identity.Name); Chat_Message message = new Chat_Message() { Text = Text, User = user }; message = db.Chat_Message.Add(message); chat_Room.Messages.Add(message); var date = DateTime.Now; user.LastView = date; chat_Room.LastUpdate = date; db.SaveChanges(); return(View(chat_Room)); }