public async Task <ActionResult> CreatePerm(CreatePermViewModel model) { if (!ModelState.IsValid) { var errors = ModelState.Values.SelectMany(a => a.Errors); TempData["Code"] = "danger"; TempData["Head"] = "Error"; TempData["Messages"] = errors.Select(a => a.ErrorMessage).ToList(); return(RedirectToAction("Index", "Dashboard", new { sub = "Perm" })); } Permission perm = new Permission() { Name = model.Name, Description = model.Description }; StatusCode result = await _ps.CreatePermissionAsync(model); // Parse results ParseResults(result, "Permission"); // Redirect return(RedirectToAction("Index", "Dashboard", new { sub = "Perm" })); }
public async Task <StatusCode> CreateGroupAsync(CreatePermViewModel model) { // Find Institution var inst = _db.Institutions.Find(model.InstId); if (inst == null) { return(StatusCode.ObjectNotFound); } // Create Group object var group = new ApplicationGroup() { Name = model.Name, Description = model.Description, InstId = inst.Id }; // Parse group permissions List <Permission> permissions = new List <Permission>(); if (!string.IsNullOrEmpty(model.ParentId)) { var parent = _db.Groups.Find(model.ParentId); permissions = parent.Permissions.ToList(); group.Permissions = permissions; group.Parent = parent; } // Save group in DB try { _db.Groups.Add(group); await _db.SaveChangesAsync(); return(StatusCode.CreateSuccess); } catch (Exception e) { return(StatusCode.ExceptionThrown); } }
public async Task <StatusCode> CreatePermissionAsync(CreatePermViewModel model) { Permission perm = new Permission() { Name = model.Name, Description = model.Description }; try { _db.Permissions.Add(perm); await _db.SaveChangesAsync(); return(StatusCode.CreateSuccess); } catch (Exception e) { return(StatusCode.ExceptionThrown); } }
public async Task <StatusCode> CreateRoleAsync(CreatePermViewModel model) { ApplicationRole role = new ApplicationRole() { Name = model.Name, Description = model.Description }; try { ApplicationRoleStore roleStore = new ApplicationRoleStore(_db); await roleStore.CreateAsync(role); return(StatusCode.CreateSuccess); } catch (Exception e) { return(StatusCode.ExceptionThrown); } }
public async Task <ActionResult> CreateGroup(CreatePermViewModel model) { // Validate Model if (!ModelState.IsValid) { var errors = ModelState.Values.SelectMany(a => a.Errors); TempData["Code"] = "danger"; TempData["Head"] = "Error"; TempData["Messages"] = errors.Select(a => a.ErrorMessage).ToList(); return(Redirect(Request.UrlReferrer.ToString())); } // Create Group StatusCode result = await _ps.CreateGroupAsync(model); // Parse results ParseResults(result, "Group"); // Redirect return(Redirect(Request.UrlReferrer.ToString())); }
public async Task <ActionResult> CreateRole(CreatePermViewModel model) { // Validate model if (!ModelState.IsValid) { var errors = ModelState.Values.SelectMany(a => a.Errors); TempData["Code"] = "danger"; TempData["Head"] = "Error"; TempData["Messages"] = errors.Select(a => a.ErrorMessage).ToList(); return(RedirectToAction("Index", "Dashboard", new { sub = "Roles" })); } // Create Role StatusCode result = await _ps.CreateRoleAsync(model); // Parse results ParseResults(result, "Role"); // Redirect return(RedirectToAction("Index", "Dashboard", new { sub = "Roles" })); }