public ActionResult RemoveGroup(RemoveGroupViewModel model) { if (User.Identity.IsAuthenticated && User.IsInRole("Admin")) { if (StatementManager.GetGroupById(model.Id) != null) { StatementManager.RemoveGroup(model.Id); } return(RedirectToAction("Groups", "Admin")); } return(RedirectToAction("Index", "Home")); }
public ActionResult RemoveGroup(RemoveGroupViewModel model) { if (!ModelState.IsValid) { return(Index()); } try { _groupService.RemoveGroup(model.GroupId, model.Secret); return(RedirectToAction("Index")); } catch (WrongGroupPasswordException) { ModelState.AddModelError("", Translations.Dashboard_IncorrectGroupSecret); return(Index()); } }
public async Task <IActionResult> RemoveGroup(RemoveGroupViewModel viewModel, CancellationToken cancellationToken) { var account = await AccountProvider.GetAccountForCurrentUser(cancellationToken); var group = await GetGroup(viewModel.GroupId, cancellationToken); if (group == null) { return(BadRequest()); } if (!group.IsOwner(account)) { return(Forbid()); } MailAppDbContext.Remove(group); await MailAppDbContext.SaveChangesAsync(cancellationToken); return(RedirectToAction(nameof(List))); }