PHPackages                             danepete/drupal-role-manager - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Admin Panels](/categories/admin)
4. /
5. danepete/drupal-role-manager

ActiveDrupal-module[Admin Panels](/categories/admin)

danepete/drupal-role-manager
============================

Drupal module for bulk role management (add, remove, convert) with flexible user targeting, cron-based scheduled role assignments, revision history, audit logging, and an admin UI with dry-run previews.

v1.3.1(3mo ago)010GPL-2.0-or-laterPHP

Since Apr 15Pushed 3mo agoCompare

[ Source](https://github.com/DanePete/drupal-role-manager)[ Packagist](https://packagist.org/packages/danepete/drupal-role-manager)[ RSS](/packages/danepete-drupal-role-manager/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (1)Versions (6)Used By (0)

Role Manager
============

[](#role-manager)

A Drupal module for bulk role management and automated, cron-based scheduled role assignments.

Features
--------

[](#features)

### Role Manager (Bulk Operations)

[](#role-manager-bulk-operations)

- **Add**, **remove**, or **convert** roles in bulk.
- Target users four ways: by role, by email domain, by individual selection, or all users.
- Filter users by active/blocked status.
- Batch API processing for large user sets.
- Double-click protection on the execute button.

### Scheduled Roles

[](#scheduled-roles)

- Config entity-based schedules that run automatically via cron.
- Recurrence options: one-time, daily, weekly (specific days), monthly (specific dates).
- Date range and daily time window support.
- Three targeting modes: by role, individual users (with a full AJAX user browser), or all users.
- Real-time active/inactive status display on the schedule list.
- Dry-run preview to see what cron would do without making changes.
- Clone/duplicate schedules as a starting point for new ones.
- Quick in-place role creation from the schedule form.

### Revision History

[](#revision-history)

- Every schedule save captures a snapshot of the previous state.
- Full history page per schedule with timestamps, who changed it, and a change summary.
- One-click revert to any prior version.

### Audit Log

[](#audit-log)

- All role changes (from bulk operations and cron) are recorded.
- Searchable, sortable log page with pagination.

### Permissions

[](#permissions)

- Dedicated `manage role schedules` permission for fine-grained access control.

### Help &amp; Guide

[](#help--guide)

- Built-in tabbed tutorial with visual diagrams and plain-language explanations.

Requirements
------------

[](#requirements)

- Drupal 10.3+ or 11.x
- PHP 8.1+

Installation
------------

[](#installation)

Add the repository to your project's `composer.json`:

```
{
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/DanePete/drupal-role-manager"
        }
    ]
}
```

Then install:

```
composer require danepete/drupal-role-manager
drush en role_converter
```

Configuration
-------------

[](#configuration)

- **Role Manager:** Administration &gt; People &gt; Role Manager (`/admin/people/role-manager`)
- **Scheduled Roles:** Administration &gt; People &gt; Scheduled Roles (`/admin/people/scheduled-roles`)
- **Audit Log:** Administration &gt; People &gt; Audit Log (`/admin/people/role-manager/log`)

License
-------

[](#license)

GPL-2.0-or-later

###  Health Score

33

—

LowBetter than 72% of packages

Maintenance81

Actively maintained with recent releases

Popularity5

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

5

Last Release

98d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/25e37a6918d20e4770a540fbdb1d97e9da5b81ce58b9802d69e55d8836a0a6dd?d=identicon)[DanePete](/maintainers/DanePete)

### Embed Badge

![Health badge](/badges/danepete-drupal-role-manager/health.svg)

```
[![Health](https://phpackages.com/badges/danepete-drupal-role-manager/health.svg)](https://phpackages.com/packages/danepete-drupal-role-manager)
```

###  Alternatives

[drupal/core-recommended

Locked core dependencies; require this project INSTEAD OF drupal/core.

6942.5M425](/packages/drupal-core-recommended)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
