public IActionResult Comment(CommunicationViewModels model, int specific_user_page_id, int message_id, int user_id) { int? Session = HttpContext.Session.GetInt32("session_id"); User CurrentUser = _context.Users.SingleOrDefault(u => u.UserId == Session); User SpecificUser = _context.Users.SingleOrDefault(u => u.UserId == user_id); ViewBag.logged_in_user = CurrentUser; ViewBag.user = SpecificUser; List <Message> ReceivedMessages = _context.Messages.Where(u => u.ReceiverId == user_id).Include(x => x.User).ToList(); ViewBag.messages = ReceivedMessages; if (ModelState.IsValid) { Comment newComment = new Comment { comment = model.Comm.comment, UserId = (int)Session, MessageId = message_id, created_at = DateTime.Now }; _context.Comments.Add(newComment); _context.SaveChanges(); return(Redirect($"users/show/{specific_user_page_id}")); } else { return(View("SpecificUser")); } }
public IActionResult Message(CommunicationViewModels model, int user_id, int specific_user_page_id) { int id = user_id; int? Session = HttpContext.Session.GetInt32("session_id"); User CurrentUser = _context.Users.SingleOrDefault(u => u.UserId == Session); User SpecificUser = _context.Users.SingleOrDefault(u => u.UserId == specific_user_page_id); ViewBag.logged_in_user = CurrentUser; ViewBag.user = SpecificUser; List <Message> ReceivedMessages = _context.Messages.Where(u => u.ReceiverId == user_id).Include(x => x.User).ToList(); ViewBag.messages = ReceivedMessages; if (ModelState.IsValid) { if (specific_user_page_id == user_id) { ModelState.AddModelError(string.Empty, "You can't leave a message for yourself!"); return(View("SpecificUser")); } else { Message NewMessage = new Message { message = model.Mess.message, created_at = DateTime.Now, UserId = (int)Session, ReceiverId = (int)specific_user_page_id }; _context.Messages.Add(NewMessage); _context.SaveChanges(); return(Redirect($"users/show/{specific_user_page_id}")); } } else { return(View("SpecificUser")); } }