Currently running v 2.6.10 upgrading to 2.8x in August.
We recently implemented external db enrolment for all of course creation as well as student and teacher enrolments.
We also use ldap for authentication.
We run 2 scripts daily via crontab, one to synchronize all our users via the ldap sync script and the other to create new courses and add/drop enrolments using db enrolment sync script.
The process has been running very well except for problems with spontaneous removal of student and teacher enrolments so I just want to make sure I understand the plug in and how it works.
- Even if we do not have the enrolment synchronization script actively scheduled and running via crontab, will the plug-in (via cron) attempt to un-enrol users when they log in if they do not exist in the external database source? Reading the documentation it seems that yes, this is the behavior and it makes sense based on what has been happening but I would really like the confirm this is the behavior causing our problems. It seemed to me that it kept occurring until I disabled the actual enrolment plugin in Moodle not just the scripts in crontab themselves. Although the removal of users was only limited to certain courses and very random - still trying to work though a pattern here.
- If this IS the expected behavior, is there any way to disable it? I don't see anything pop out in the admin interface that would allow for this to be disabled. Would choosing to just keep enrolments in tact in the external DB enrolment settings provide this functionality? If so, how would they then be removed if there was a drop?
- This brings me to best practices - how do other large institutions handle their enrolments when using db enrolment method?
- Do you just provide the necessary amount of data through via external data source to keep everything synchronized accordingly and then proceed to archive the data after a set amount of time (for us this would be 4 terms worth of data)?
- Do you load the enrolment data via the external data source and then maybe change the enrolment type after a set amount of days so it essentially 'locks' the data (eg, after official add/drop period)?
- Is there another way to 'lock' the enrolment data other than changing the enrolment type?
Thank you in advance for anyone who is willing to share their ideas and experiences!
UPDATE just found this which could be something to consider...https://moodle.org/mod/forum/discuss.php?d=74133#p697733