public virtual ActionResult MultipleChangeAsChild(string tabId, int parentId, int[] IDs, int?userId, int?groupId) { var permission = ChildEntityPermission.Create(ChildContentService, parentId, userId, groupId); var model = ChildEntityPermissionViewModel.Create(permission, tabId, parentId, MultipleChangeAction, ControllerName, "SaveMultipleChangeAsChild", ChildContentService, userId, groupId, IDs); return(JsonHtml("ChildEntityPermissionProperties", model)); }
public ChildEntityPermission Read(int parentId, int entityId, int?userId, int?groupId) { using (var scope = new QPConnectionScope()) { DataRow row; if (userId.HasValue) { row = Common.GetChildContentPermissionForUser(scope.DbConnection, parentId, entityId, userId.Value); } else if (groupId.HasValue) { row = Common.GetChildContentPermissionForGroup(scope.DbConnection, parentId, entityId, groupId.Value); } else { throw new ArgumentNullException(nameof(groupId)); } if (row?.Field <decimal?>("LevelId") == null) { return(null); } var containsHide = row.Table.Columns.Contains("Hide"); return(ChildEntityPermission.Create(null, parentId, userId, groupId, Convert.ToInt32(row.Field <decimal>("LevelId")), row.Field <bool>("PropagateToItems"), containsHide && row.Field <bool>("Hide"))); } }
private ActionResult SaveAsChild(string tabId, int parentId, Action <ChildEntityPermissionViewModel> action) { try { var permission = ChildEntityPermission.Create(ChildContentService, parentId); var model = ChildEntityPermissionViewModel.Create(permission, tabId, parentId, SaveChildPermissionAction, ControllerName, null, ChildContentService, isPostBack: true); TryUpdateModel(model); try { action(model); } catch (ActionNotAllowedException nae) { ModelState.AddModelError("OperationIsNotAllowedForAggregated", nae.Message); return(JsonHtml("ChildEntityPermissionProperties", model)); } TempData[GetChildEntityPermissionModelKey(tabId, parentId)] = model; return(Redirect("SaveAsChild", new { tabId, parentId })); } catch { TempData.Remove(GetChildEntityPermissionModelKey(tabId, parentId)); throw; } }
public virtual async Task <ActionResult> MultipleChangeAsChild(string tabId, int parentId, [FromBody] SelectedItemsViewModel idsModel, int?userId, int?groupId) { var permission = ChildEntityPermission.Create(ChildContentService, parentId, userId, groupId); var model = ChildEntityPermissionViewModel.Create(permission, tabId, parentId, MultipleChangeAction, ControllerName, "SaveMultipleChangeAsChild", ChildContentService, userId, groupId, idsModel.Ids); return(await JsonHtml("ChildEntityPermissionProperties", model)); }
public virtual ActionResult AllChangeAsChild(string tabId, int parentId, int?userId, int?groupId) { if (!userId.HasValue && !groupId.HasValue) { return(new JsonNetResult <object>(new { success = false, message = EntityPermissionStrings.UserOrGroupAreNotSelected })); } var permission = ChildEntityPermission.Create(ChildContentService, parentId, userId, groupId); var model = ChildEntityPermissionViewModel.Create(permission, tabId, parentId, AllChangeAction, ControllerName, "AllChangeAsChild", ChildContentService, userId, groupId); return(JsonHtml("ChildEntityPermissionProperties", model)); }
public ChildEntityPermission Read(int parentId, int entityId, int?userId, int?groupId) { using (var scope = new QPConnectionScope()) { DataRow row; if (userId.HasValue) { row = Common.GetChildArticlePermissionForUser(scope.DbConnection, parentId, entityId, userId.Value); } else if (groupId.HasValue) { row = Common.GetChildArticlePermissionForGroup(scope.DbConnection, parentId, entityId, groupId.Value); } else { throw new ArgumentNullException(nameof(groupId)); } return(row?.Field <decimal?>("LevelId") == null ? null : ChildEntityPermission.Create(null, parentId, userId, groupId, Convert.ToInt32(row.Field <decimal>("LevelId")))); } }
public virtual ActionResult ChangeAsChild(string tabId, int parentId, int id, int?userId, int?groupId) { var permission = ChildContentService.Read(parentId, id, userId, groupId) ?? ChildEntityPermission.Create(ChildContentService, parentId, userId, groupId); var model = ChildEntityPermissionViewModel.Create(permission, tabId, parentId, ChangeAction, ControllerName, "ChangeAsChild", ChildContentService, userId, groupId, new[] { id }); return(JsonHtml("ChildEntityPermissionProperties", model)); }