Add( $selectedRole ); // Get old list of users for role. GetUsersOrGroupsByRole( true, $selectedRole, $oldUsersForRoleList ); // Find users to lose role permission. $revokeList = array_diff( $oldUsersForRoleList, $usersSelected ); if ( $revokeList != null && !empty( $revokeList ) ) { $permissionsToRevoke = new MgStringCollection(); 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 ); $site->GrantRoleMembershipsToGroups( $roleToUpdate, $permissionsToGrant ); } // Everything is OK. $confirmationMsg = sprintf( $confSuccessfulUpdate, $selectedRole ); } } catch ( MgException $e ) { CheckForFatalMgException( $e ); $errorMsg = $e->GetExceptionMessage(); } catch ( Exception $e ) { $errorMsg = $e->getMessage(); } ?>
Role: | |
Description: |