← All projects
Open source2026

Schedule Course Copy

Moodle plugin for site administrators that schedules, runs, and tracks bulk copies of template courses into live courses, then reveals them to students at the right time. Paste rows from Excel or import a CSV, follow every copy on a dashboard, and retry failures.

Moodle 4.2 – 5.3GPL v3

At a glance

Type
Moodle local plugin
Requires
Moodle 4.2 to 5.3
Latest version
0.6.0
License
GNU GPL v3
Year
2026
MoodlePHPAutomation

Why it exists

Copying template courses into a new term's live courses is repetitive and easy to get wrong when it's done one course at a time. This plugin automates the part of that cycle that happens inside Moodle: scheduling copies in bulk, running them, revealing them to students at the right moment, and reporting on all of it.

Work is organized into a category tree (for example Main Campus / Nursing / Vocational Nurse), each mapped to a Moodle course category. Every job is one new course, copied with Moodle's own course copy engine, so template users keep their roles while grades, submissions, and logs stay behind.

Highlights

Bulk scheduling

One row per course with shared defaults. Paste straight from Excel or Google Sheets, or import a CSV, with live validation on names, dates, and templates.

Controlled reveal

Reveal when copied, on the course start date, or keep hidden until an admin clicks Reveal now.

Tracking and retries

Each job moves from Scheduled to Copying, Ready to reveal, and Revealed. Failed copies keep the reason, attempts, and a log, and can be retried one by one or in bulk.

Dashboard and reports

Status cards, a needs-attention list, upcoming copies, per-program progress, and a filterable status report with bulk actions.

Notifications

Scheduled, live, and failure emails through Moodle's messaging, with admin-editable templates and placeholders.