Select Moodle version:

Enrolment: Course Enrolment upon Approval

The enrolment plugin "enrol on approval" add an approval step into the course enrolment process. Users will be informed by mail as soon as their course application has been approved/ rejected. Related moodle forum:
Maintained by: Picture of Flotter Totte Flotter Totte

Enrolment Process:

The enrolment plugin "enrol on approval" makes the following enrolment process possible:

1. user applies for course enrolment

2. admin approves enrolment application (or cancels it)

3. user gets informed about admin's action by e-mail

4. after admin has approved, user is enroled to the course.

Detailed Instructions and Feature Requests/ Bug Reports

Related moodle forum:



  • Village of Palatine (Info capture field and notification to teachers
  • Vicente Jiménez Aguilar (Spanish version)
  • Rebecca Schmitt (German version)
  • Roger Costa Oliveira (Portuguese/Brazil (PT_BR) version)
  • Abhishek Goel (Course specific approval list, Security issue)




Picture of Flotter Totte
Flotter Totte (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Picture of Christian Mark Nisperos
    Wed, Jul 25, 2012, 1:36 PM
    Notice: Undefined index: enrolid in /var/www/html/ntc-dev/enrol/apply/apply.php on line 23
    Another bug is:
    There is no default role or 'roleid' for the enrolled student or participant.
  • Picture of Flotter Totte
    Wed, Feb 20, 2013, 1:26 PM
    Hi Christian, I just saw your comment here. This issue has been fixed some time ago. Please post issues like this one in the related forum at: Thanks smile
  • Picture of Alan Hare
    Tue, May 21, 2013, 2:03 AM
    Flotter Totte, in regards to the settings page for the plugin; Can you provide a list of variables to use in the email subject, mail content, such as: UserName, CourseName, CategoryName, TeacherName
  • Picture of Alan Hare
    Tue, May 21, 2013, 2:32 AM
    Using Moodle 2.4 with MSSQL.

    Received error:
    Debug info: SQLState: 42000

    Error Code: 102

    Message: [Microsoft][SQL Server Native Client 11.0][SQL Server]Incorrect syntax near 'limit'.

    select * from mdl_role where archetype="student" limit 1
    [array (
    Error code: dmlreadexception
    Stack trace:
    ◦line 426 of \lib\dml\moodle_database.php: dml_read_exception thrown
    ◦line 260 of \lib\dml\sqlsrv_native_moodle_database.php: call to moodle_database->query_end()
    ◦line 367 of \lib\dml\sqlsrv_native_moodle_database.php: call to sqlsrv_native_moodle_database->query_end()
    ◦line 779 of \lib\dml\sqlsrv_native_moodle_database.php: call to sqlsrv_native_moodle_database->do_query()
    ◦line 827 of \lib\dml\sqlsrv_native_moodle_database.php: call to sqlsrv_native_moodle_database->get_recordset_sql()
    ◦line 1382 of \lib\dml\moodle_database.php: call to sqlsrv_native_moodle_database->get_records_sql()
    ◦line 78 of \enrol\apply\lib.php: call to moodle_database->get_record_sql()
    ◦line 63 of \enrol\index.php: call to enrol_apply_plugin->enrol_page_hook()
  • Picture of Flotter Totte
    Wed, May 29, 2013, 9:35 PM
    Hi Alan,

    in case you are looking for a list of variables which can be used in the mail: this can be found in the plugin documentation (

    Forum support for this plugin:

    All the best,
  • Picture of amit gupta
    Mon, Jun 10, 2013, 4:59 PM
    can we have same permissions for teacher. I mean instead of sending the request to the admin, can we send the request for approval/denial to teacher of that particular course. If yes, then how??? Please let me know asap.
  • Picture of Flotter Totte
    Wed, Jul 3, 2013, 11:50 AM
    Hi amit, please see my reply in the related forum
  • Picture of alex martinez
    Fri, Jan 17, 2014, 5:12 AM
    hola ... quisiera saber si hay documentación que me permita saber que "marcas especiales" puedo utilizar
  • Picture of Alan Kaplan
    Fri, Feb 7, 2014, 10:19 PM
    Hi - Is this plugin compatible with Moodle 2.6? Thanks.
  • Picture of Christian Niemczik
    Mon, Apr 7, 2014, 11:25 PM
    Yes. Works with 2.6.2+
  • Picture of Christian Niemczik
    Tue, Apr 8, 2014, 4:47 PM
    Some changes for the German translation. Would be great if you could integrate them:

    $string['cancelmailcontent'] = 'Mail für Verwerfen der Einschreibung';
    $string['cancelmailcontent_desc'] = 'Bitte benutzen Sie die Spezialmarkierungen, um den gewünschten Mailinhalt zu ersetzen.
    {firstname}:Registrierungsname; {content}:Kursname';
    $string['cancelmailsubject'] = 'Mail-Betreff für Verwerfen der Einschreibung';
    $string['confirmenrol'] = 'Einschreibeanfragen bearbeiten';
    $string['confirmmailcontent'] = 'E-Mail für Bestätigung der Einschreibung';
    $string['confirmmailcontent_desc'] = 'Bitte benutzen Sie die Spezialmarkierungen, um den gewünschten Mailinhalt zu ersetzen.
    {firstname}:Registrierungsname; {content}:Kursname';
    $string['confirmmailsubject'] = 'E-Mail-Betreff für Bestätigung der Einschreibung';
    $string['description'] = 'Beschreibung';
    $string['editdescription'] = 'Beschreibung anpassen';
    $string['enrolusers'] = 'Benutzer manuell einschreiben';
    $string['mailtoteacher_suject'] = 'Neue Anfrage zur Einschreibung';
    $string['notification'] = 'Einschreibungsantrag wurde erfolgreich gesendet..

    Sie werden via Mail informiert, sobald Ihre Einschreibung bestätigt wurde.';
    $string['sendmailtoteacher'] = 'Sende eine Hinweis-E-Mail an den Trainer';
    $string['setting_edit'] = 'Bearbeiten';
  • Picture of Christian Niemczik
    Tue, Apr 8, 2014, 4:54 PM
    Also one change for the English version:

    $string['confirmenrol'] = 'Manage enrolment requests';
  • Picture of Flotter Totte
    Wed, Apr 9, 2014, 11:16 AM
    Hi Chrisitan,

    thanks a lot!

    Could you please send me the German lang file? I will send you my email in a pm

Please login to post comments