public async Task<ActionResult> Edit(EditGroupViewModel model) { if (ModelState.IsValid) { var userId = User.Identity.GetUserId(); if (model.Group.OwnerId == userId || identityManager.IsUserInRole(userId, "Admin")) { if (!model.Group.GroupId.HasValue) { db.Groups.Add(model.Group); } else { db.Entry(model).State = EntityState.Modified; } await db.SaveChangesAsync(); return RedirectPermanent(model.ReturnUrl); } else { return RedirectToActionPermanent("AccessDenied", "Home"); } } return View(model); }
// GET: /Group/Create public ActionResult Create() { var model = new EditGroupViewModel(new Group(User.Identity.GetUserId())); model.Group.OwnerId = User.Identity.GetUserId(); model.ReturnUrl = Request.UrlReferrer.ToString(); ViewBag.Title = "Create Group"; return View("Edit", model); }
// GET: /Group/Edit/5 public async Task<ActionResult> Edit(int? id, string returnUrl) { EditGroupViewModel model = null; if (id != null) { model = new EditGroupViewModel(await db.Groups.FindAsync(id)); } return View(model); }