Category Course Reset

Local plugins ::: local_category_reset
Maintained by Brian Pool
Efficiently reset all courses in a category and subcategories. Removes student enrollments, grades, and submissions while intelligently managing groups - automatically deleting numbered groups (like NT-1-1, NT-2-1) while preserving special groups (like NT-504, NT-IEP, NT-GIFTED). Perfect for schools preparing courses for a new term. The groups that are deleted and kept are configured in the plugin settings.

Category Course Reset v1.0.1

Moodle 4.5, 5.0, 5.1
Released: Wednesday, 28 January 2026, 10:04 PM

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[1.0] - 2026-01-21

Added

  • Initial release of Category Course Reset plugin
  • Bulk reset functionality for all courses in a category and subcategories
  • Configurable group deletion pattern using wildcards
  • Configurable list of groups to always preserve
  • Remove student enrollments during reset
  • Delete grades and submissions during reset
  • Clear group memberships while preserving special groups
  • Reset course completion data
  • Set new course start date during reset
  • Confirmation dialog before executing reset
  • Direct access from category management interface
  • Plugin settings page accessible from plugin list
  • Privacy API implementation (null provider)
  • Comprehensive documentation and README

Features

  • Pattern matching for group deletion (e.g., NT-- matches NT-1-1, NT-2-1, etc.)
  • Whitelist of groups that should never be deleted
  • Wildcard support (* matches any characters)
  • Support for Moodle 4.5 and higher
  • Full language string support for internationalization
  • Proper capability checking (local/category_reset:reset)

Security

  • Proper input sanitization using required_param()
  • Session key verification for form submissions
  • Capability checking before allowing reset operations
  • Context-based permission system

[Unreleased]

Planned Features

  • Schedule automated resets for future dates
  • Email notifications upon completion
  • Detailed reset logs and reports
  • Preview mode to see what would be reset without executing
  • Custom reset profiles for different scenarios
  • Option to create backup before reset
  • Support for additional Moodle versions

Version information

Version build number
2026012801
Version release name
v1.0.1
Maturity
Beta
MD5 Sum
3abecb7ec39e53a113293428afe1b606
Supported software
Moodle 4.5, Moodle 5.0, Moodle 5.1

Version control information

Version control system (VCS)
GIT
VCS repository URL

Default installation instructions for plugins of the type Local plugins

  1. Make sure you have all the required versions.
  2. Download and unpack the module.
  3. Place the folder in the "local" subdirectory.
  4. Visit http://yoursite.com/admin to finish the installation.