/// <summary> /// Removes authorized role to project. Called when the "Remove authorized role" button is pressed. /// Expects the CreateProject and AddAuthorizedRole methods to be run first. /// </summary> private bool RemoveAuthorizedRole() { // Get the project ProjectInfo project = ProjectInfoProvider.GetProjectInfo("MyNewProject", SiteContext.CurrentSiteID, 0); RoleInfo role = RoleInfoProvider.GetRoleInfo("CMSDeskAdmin", SiteContext.CurrentSiteID); PermissionNameInfo permission = PermissionNameInfoProvider.GetPermissionNameInfo("AccessToProject", "ProjectManagement", null); if ((project != null) && (role != null) && (permission != null)) { // Remove relationship ProjectRolePermissionInfoProvider.RemoveRelationship(project.ProjectID, role.RoleID, permission.PermissionId); return(true); } return(false); }
/// <summary> /// On item changed event. /// </summary> protected void gridMatrix_OnItemChanged(object sender, int roleId, int permissionId, bool allow) { if (!CheckPermissions("CMS.ProjectManagement", PERMISSION_MANAGE)) { return; } // Delete permission hash tables ProjectInfoProvider.ClearProjectPermissionTable(ProjectID, CMSContext.CurrentUser); if (allow) { ProjectRolePermissionInfoProvider.AddRelationship(ProjectID, roleId, permissionId); } else { ProjectRolePermissionInfoProvider.RemoveRelationship(ProjectID, roleId, permissionId); } }