Ned Profile Enrolment
Self-enrol users and automatically assign them to Moodle groups using a selected custom user-profile field.
How it works
- A course manager adds the Ned Profile Enrolment method to a course.
- The manager selects a custom profile field whose value will be used as the group name.
- A user self-enrols, subject to the configured key, dates, cohort, role, and capacity.
- The plugin creates or finds the matching group and adds the user.
- A scheduled task reconciles memberships when profile values change.
Safety and group ownership
By default, the plugin changes only memberships it owns. Existing teacher-managed and third-party group memberships are preserved. Groups created by the plugin are recorded so cleanup can be restricted to plugin-owned groups.
Course settings and permissions
- Group profile field: required custom profile field used for group names.
- Remove users from all other course groups: off by default. Enables course-wide exclusive group membership.
- Delete empty groups: off, plugin-owned groups only, or all course groups.
- Enrolment key: optional shared key for self-enrolment.
- Assigned role, start/end dates, duration, capacity, and cohort restriction.
Moodle course context and capabilities remain authoritative. Applying synchronization changes requires the plugin's manage capability and a valid Moodle session key.
Manual synchronization
Open the enrolment method settings and select Preview synchronization. The preview reports users evaluated, groups created, memberships added or removed, empty groups deleted, and users skipped because their profile value is blank. Applying changes requires the manage capability and a valid Moodle session key.
Automatic synchronization
The scheduled task runs every 15 minutes. Moodle cron must be configured. Users with an empty profile value are skipped; the plugin does not create blank groups.
Privacy and data sharing
The plugin reads the selected custom profile field and uses Moodle's enrolment and group subsystems. Profile-field values and group membership used for enrolment behaviour are processed locally in Moodle and are not sent to Ned Cloud by this plugin.
If Ned Hub is configured, normal licence, site, and plugin metadata may be sent to Ned Cloud for entitlement and lifecycle purposes. That is separate from the plugin's local enrolment processing.
Licensing
The Moodle-side plugin is intended to remain GPL-compatible. Ned Tools commercial entitlement may govern supported lifecycle access, updates, support, and hosted services rather than hiding Moodle plugin source code.
Troubleshooting
- Confirm the plugin is installed at
enrol/nedprofile. - Confirm the site is running a supported Moodle version from 4.5 through 5.1.
- Confirm a profile field and assignable role are selected.
- Run the synchronization preview before applying destructive settings.
- Confirm Moodle cron is running if profile changes are not reflected within 15 minutes.
Change history
- Reconciled the plugin for Moodle 4.5–5.1, version 0.1.1, and expanded compatibility, permissions, privacy/data-sharing, licensing, and troubleshooting guidance.
- 496b162Corrected the Moodle Plugin CI target path.
- d4cbcf6Added safe post-deployment version verification.
- 15438feUpdated the Moodle Plugin CI environment and command invocation.
- c4c0b04Corrected Moodle enrolment API compatibility discovered by the first development deployment.
- a0b2e76Created the clean-room plugin, safe group ownership model, optional destructive modes, synchronization preview, CI, and development deployment.