@model Project_Unite.Models.AdminAccessControlViewModel @{ ViewBag.Title = "Access control"; Dictionary EnumNames = new Dictionary { { "None", "No permissions" }, { "CanRead", "Read only" }, { "CanPost", "Can post new topics" }, {"CanReply", "Can reply" } }; var availablePermissions = new List(); foreach (var v in Enum.GetValues(typeof(Project_Unite.Models.PermissionPreset))) { availablePermissions.Add(new SelectListItem { Value = v.ToString(), Text = EnumNames[v.ToString()] }); } }

Access control

Below, you can modify the access control list (ACL) definitions for all forum categories.

@foreach (var key in Model.IDs) {

@key

@foreach (var p in Model.ACLList.Where(x => x.CategoryId == key)) { }
Role ID Value
@Html.DisplayFor(v => p.RoleId) @foreach(var r in EnumNames) { if(r.Key == p.Permissions.ToString()) { @r.Value } else { @Html.ActionLink(r.Value, "SetPermission", "Admin", new { id=p.CategoryId, role=p.RoleId, permission=r.Key}, new { @class = "btn btn-default" }) } }
}