public async Task <IActionResult> Create([Bind("Id,Name,ApplicationUserId")] MessagingGroup messagingGroup) { if (ModelState.IsValid) { var user = GetUser(); user.MessagingGroups.Add(messagingGroup); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(messagingGroup)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,Name,ApplicationUserId")] MessagingGroup messagingGroup) { if (id != messagingGroup.Id) { return(NotFound()); } var user = GetUser(); if (!UserHasGroup(user, messagingGroup.Id)) { return(Unauthorized()); } if (ModelState.IsValid) { try { var group = user.MessagingGroups.Single(g => g.Id == messagingGroup.Id); group.Name = messagingGroup.Name; await _context.SaveChangesAsync(); } catch (InvalidOperationException) { if (!MessagingGroupExists(messagingGroup.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(messagingGroup)); }