Manual Enrolment Extension Plugin
This plugin allows students with manual course enrollments that have an end date to request extensions, and enables teachers/managers to approve or deny these requests. The extension request option is only visible to students who are enrolled via manual enrollment and have a set end date for their enrollment.
Features
- Students can request extensions for their manual course enrolments
- Students can specify the number of days needed and provide a reason
- Teachers and managers can approve or deny extension requests
- Automatic update of enrolment end dates upon approval
- Integration with Moodle's course navigation
- Role-based access control
Requirements
- Moodle 4.1 or later
- Manual enrolment must be enabled in the course
Installation
- Place the plugin files in
/local/extendmanualenrol
- Visit your Moodle site's administration area
- Follow the plugin installation process
- The plugin will create necessary database tables automatically
Usage
For Students
- Navigate to a course where you are enrolled via manual enrolment
- Click on "Request Extension" in the course navigation menu
- Fill in the number of days needed and provide a reason
- Submit the request and wait for approval
For Teachers/Managers
- Navigate to a course where you have teaching/managing permissions
- Click on "Manage Extensions" in the course navigation menu
- View all extension requests for the course
- Approve or deny pending requests
Permissions
The plugin defines two capabilities:
local/extendmanualenrol:requestextension: Allows users to request extensions (default for students)
local/extendmanualenrol:manageextensions: Allows users to manage extension requests (default for teachers and managers)
Workflow
- Student notices their enrolment is about to expire
- Student submits an extension request through the course menu
- Teachers/managers receive pending requests in their management interface
- Upon approval, the student's enrolment end date is automatically extended
- Students can see the status of their requests
Development
If you need to modify the plugin:
- Update version.php when making changes
- Add new capabilities to db/access.php if needed
- Add new language strings to lang/en/local_extendmanualenrol.php
- Follow Moodle coding standards and guidelines