Documentation for enrolment architecture needed

Documentation for enrolment architecture needed

by Robert Brenstein -
Number of replies: 1
It would be nice for Moodle Docs to acquire some documentation about enrolment architecture and enrolment plugins. Martín?

There is a list of plugins for administrators with stub pages for most of them only, and absolutely nothing about architecture and operational details for developers. Helen has just kindly added a stub page

http://docs.moodle.org/en/Enrolment_plugins_%28developer%29

With 1.6 and the multi-enrol feature, things are not so straightfoward as they used to be. I don't think there are really complicated, but without an overview of the architecture, it is somewhat tedious to decipher what's going on for different types of plugins by checking the code.
Average of ratings: -
In reply to Robert Brenstein

Re: Documentation for enrolment architecture needed

by Robert Brenstein -
There are mentions of the Enrolment Plugin API in the forums, but no link is ever given and searching the forums or Docs does not give any hits except mentions that it has to be updated for multi_enrol.

I found a few tidbits of information on the following threads

http://moodle.org/mod/forum/discuss.php?d=32338
http://moodle.org/mod/forum/discuss.php?d=33534

but these are from early days of the development and not present the actual API.

The reason I ask for the current API is that I have an urgent need to develop an interactive enrollment plugin which is a hybrid of database plugin and the internal plugin: it is supposed to automatically enroll students to a course they try to enter (only this one course) if student registration for it is found in a database (coming from SIS), and revert to asking for password otherwise.

By the way, I find the "enrollable" setting on the course settings page confusing as a label. It seems that it refers only to interactive enrollments whereas non-interactive enrollments will continue to work if it is off. We have courses which have actually all enrollments disabled, interactive and not, and I will eventually develop a plugin for 1.6 that allows admins to lock teachers from manually enrolling students.