Я разрабатываю собственный плагин аутентификации Moodle для Moodle 2.7.
Когда пользователь аутентифицируется, я хочу, чтобы он был добавлен в определенную когорту. Если такой когорты не существует, мне нужно, чтобы она была создана автоматически. Для этого я использую функцию user_authenticated_hook () в моем плагине аутентификации.
Мой код для создания когорты:
$data = new stdClass();
$data->name = 'Name string';
$data->idnumber = 'ID string';
$data->description = 'Description string';
$cohortId = cohort_add_cohort($data);
Я включил cohort / lib.php в файл auth.php и объявил глобальные переменные $ DB, $ CFG и $ SESSION в первой строке функции user_authenticated_hook ().
Аутентификация работает без указания когорт. Но с когортной частью аутентификация не выполняется, и я перенаправляюсь на страницу входа.
Заголовок страницы изменен на «Ошибка», но это единственное сообщение об ошибке, которое я получаю.
Что я делаю неправильно? Я надеюсь, что кто-нибудь сможет помочь мне создать когорты и добавить участников.