示例#1
0
     foreach ($revokeList as $permissionToRevoke) {
         $permissionsToRevoke->Add($permissionToRevoke);
     }
     $site->RevokeRoleMembershipsFromUsers($roleToUpdate, $permissionsToRevoke);
 }
 // Find users to gain role permission.
 $grantList = array_diff($usersSelected, $oldUsersForRoleList);
 if ($grantList != null && !empty($grantList)) {
     $permissionsToGrant = new MgStringCollection();
     foreach ($grantList as $permissionToGrant) {
         $permissionsToGrant->Add($permissionToGrant);
     }
     $site->GrantRoleMembershipsToUsers($roleToUpdate, $permissionsToGrant);
 }
 // Get old list of groups for role
 GetUsersOrGroupsByRole(false, $selectedRole, $oldGroupsForRoleList);
 // Find groups to lose role permission.
 $revokeList = array_diff($oldGroupsForRoleList, $groupsSelected);
 if ($revokeList != null && !empty($revokeList)) {
     $permissionsToRevoke = new MgStringCollection();
     foreach ($revokeList as $permissionToRevoke) {
         $permissionsToRevoke->Add($permissionToRevoke);
     }
     $site->RevokeRoleMembershipsFromGroups($roleToUpdate, $permissionsToRevoke);
 }
 // Find groups to gain role permission.
 $grantList = array_diff($groupsSelected, $oldGroupsForRoleList);
 if ($grantList != null && !empty($grantList)) {
     $permissionsToGrant = new MgStringCollection();
     foreach ($grantList as $permissionToGrant) {
         $permissionsToGrant->Add($permissionToGrant);
示例#2
0
function LoadGroupRolesTable(&$targetTable, $firstIndex, $lastIndex)
{
    GetUsersOrGroupsByRole(false, ADMIN_ROLE, $groupsWithAdminRole);
    GetUsersOrGroupsByRole(false, AUTHOR_ROLE, $groupsWithAuthorRole);
    $targetTable = array();
    LoadGroupTable($groupTable, $firstIndex, $lastIndex, false);
    foreach ($groupTable as $groupKey => $groupVal) {
        // Create record for role data
        $groupRolesRec = new GroupRolesTableRecord();
        $targetTable[$groupKey] = $groupRolesRec;
        // For each role, record the group's role permission
        if (in_array($groupKey, $groupsWithAdminRole)) {
            $groupRolesRec->adminOn = true;
        } else {
            $groupRolesRec->adminOn = false;
        }
        if (in_array($groupKey, $groupsWithAuthorRole)) {
            $groupRolesRec->authorOn = true;
        } else {
            $groupRolesRec->authorOn = false;
        }
    }
}