Разработка:sync/mcourses — различия между версиями
| DShtolin (обсуждение | вклад)  (→API) |  (→CRON) | ||
| (не показаны 2 промежуточные версии этого же участника) | |||
| Строка 4: | Строка 4: | ||
| }} | }} | ||
| − | Работа с курсами moodle | + | Работа с курсами moodle. | 
| + | Плагин отлавливает события создания/обновления дисциплины/учебного процесса, проверяет флаг создания курса в Moodle и создает, если это необходимо. | ||
| + | |||
| + | = Конфиги = | ||
| + | Список конфигов плагина. | ||
| + | |||
| + | * (string)mdlcategoryvarname - название переменной конфига в плагине sync/mcategories, куда будут добавляться новый курсы Moodle | ||
| + | * (int)mdlcourseid_template - идентификатор шаблона курса, на основании которого будут создаваться новые курсы в Moodle | ||
| + | |||
| + | = CRON = | ||
| + | Задачи, которые выполняются по крону. | ||
| + | |||
| + | * Починка неправильно созданных дисциплин (если был параметр создания курса в Moodle, но он не был создан) | ||
| + | * Починка неправильно созданных учебных процессов (если был параметр создания курса в Moodle, но он не был создан) | ||
| + | |||
| + | =События= | ||
| + | В этом разделе описан список всех событий, которые генерируются, перехватываются и обрабатываются этим плагином. | ||
| + | ====Перехватываемые события==== | ||
| + | {| border="1" | ||
| + |  |+ Таблица событий, которые перехватывает этот плагин | ||
| + |  ! Тип плагина | ||
| + |  ! Код плагина | ||
| + |  ! Код события | ||
| + |  ! Идентификтаор | ||
| + |  ! Доп. данные | ||
| + |  ! Пояснение | ||
| + |  |- | ||
| + |  | storage | ||
| + |  | programmitems | ||
| + |  | coursedata_verification_requested | ||
| + |  | идентификатор курса | ||
| + |  | массив с данными:  | ||
| + | * initiator - пользователь, запросивший согласование | ||
| + | * course - наименование курса | ||
| + | * discipline - наименование дисциплины | ||
| + | * notificationresult - массив с результатами отправки уведомлений  | ||
| + |  | Запрошено согласование мастер-курса | ||
| + |  |- | ||
| + |  | storage | ||
| + |  | programmitems | ||
| + |  | coursedata_accepted | ||
| + |  | идентификатор курса | ||
| + |  | массив с данными:  | ||
| + | * course - наименование курса | ||
| + | * discipline - наименование дисциплины | ||
| + | * notificationresult - массив с результатами отправки уведомлений  | ||
| + |  | Мастер-курс одобрен | ||
| + |  |- | ||
| + |  | storage | ||
| + |  | programmitems | ||
| + |  | coursedata_declined | ||
| + |  | идентификатор курса | ||
| + |  | массив с данными:  | ||
| + | * course - наименование курса | ||
| + | * discipline - наименование дисциплины | ||
| + | * notificationresult - массив с результатами отправки уведомлений  | ||
| + |  | Мастер-курс отклонен | ||
| + |  |- | ||
| + |  | storage | ||
| + |  | programmitems | ||
| + |  | insert | ||
| + |  |  | ||
| + |  |  | ||
| + |  | Добавление дисциплины | ||
| + |  |- | ||
| + |  | storage | ||
| + |  | programmitems | ||
| + |  | update | ||
| + |  |  | ||
| + |  |  | ||
| + |  | Обновление дисциплины | ||
| + |  |- | ||
| + |  | storage | ||
| + |  | cstreams | ||
| + |  | insert | ||
| + |  |  | ||
| + |  |  | ||
| + |  | Добавление учебного процесса | ||
| + |  |- | ||
| + |  | storage | ||
| + |  | cstreams | ||
| + |  | update | ||
| + |  |  | ||
| + |  |  | ||
| + |  | Обновление учебного процесса | ||
| + |  |} | ||
| + | |||
| == API == | == API == | ||
| Строка 71: | Строка 157: | ||
| * int | * int | ||
| − | = | + | ===='''clone_course($mdlcourseid, stdClass $courseobj)'''==== | 
| − | + | Создание курса на основе существующего курса в Moodle | |
| − | == | + | |
| − | + | ''Аргументы:''  | |
| − | + | * int $mdlcourseid - id курса в moodle | |
| − | + | * stdClass $courseobj | |
| − | + | ||
| − | + | ''Возвращаемые значения:'' | |
| − | + | * int | false - идентификатора курса вслучае успеха и false в остальных случаях | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | *  | ||
| − | *  | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | *  | ||
| − | |||
| − | |||
| − | |||
| − | |||
Текущая версия на 11:37, 2 марта 2018
| Плагин | |
| Название | mcourses | 
| Тип | sync | 
Работа с курсами moodle. Плагин отлавливает события создания/обновления дисциплины/учебного процесса, проверяет флаг создания курса в Moodle и создает, если это необходимо.
Содержание
- 1 Конфиги
- 2 CRON
- 3 События
- 3.1 Перехватываемые события
- 3.2 API
- 3.2.1 get_course($id)
- 3.2.2 get_course_link($id)
- 3.2.3 course_exists_quiet($id)
- 3.2.4 create_backup($courseid, $backupoptions = [], $fileoptions = [])
- 3.2.5 restore_backup($courseid, $restoreoptions = [], $fileoptions = [], $courseoptions = [])
- 3.2.6 backup_exists($courseid, $fileoptions = [])
- 3.2.7 create_course(stdClass $courseobj)
- 3.2.8 clone_course($mdlcourseid, stdClass $courseobj)
 
 
Конфиги
Список конфигов плагина.
- (string)mdlcategoryvarname - название переменной конфига в плагине sync/mcategories, куда будут добавляться новый курсы Moodle
- (int)mdlcourseid_template - идентификатор шаблона курса, на основании которого будут создаваться новые курсы в Moodle
CRON
Задачи, которые выполняются по крону.
- Починка неправильно созданных дисциплин (если был параметр создания курса в Moodle, но он не был создан)
- Починка неправильно созданных учебных процессов (если был параметр создания курса в Moodle, но он не был создан)
События
В этом разделе описан список всех событий, которые генерируются, перехватываются и обрабатываются этим плагином.
Перехватываемые события
| Тип плагина | Код плагина | Код события | Идентификтаор | Доп. данные | Пояснение | 
|---|---|---|---|---|---|
| storage | programmitems | coursedata_verification_requested | идентификатор курса | массив с данными: 
 | Запрошено согласование мастер-курса | 
| storage | programmitems | coursedata_accepted | идентификатор курса | массив с данными: 
 | Мастер-курс одобрен | 
| storage | programmitems | coursedata_declined | идентификатор курса | массив с данными: 
 | Мастер-курс отклонен | 
| storage | programmitems | insert | Добавление дисциплины | ||
| storage | programmitems | update | Обновление дисциплины | ||
| storage | cstreams | insert | Добавление учебного процесса | ||
| storage | cstreams | update | Обновление учебного процесса | 
API
get_course($id)
Получить объект курса moodle по его id
Аргументы:
- int $id - id курса в moodle
Возвращаемые значения:
- object|bool - объект курса или false
get_course_link($id)
Получить ссылку на курс moodle
Аргументы:
- int $id - id курса в moodle
Возвращаемые значения:
- string|bool - строка для ссылки на курс или false если такого курса нет
course_exists_quiet($id)
Аккуратно проверить существование курса в moodle, не создавая ошибок print_error
Аргументы:
- int $id - id курса в moodle
Возвращаемые значения:
- bool - true, если курс существует; false, если курс не существует
create_backup($courseid, $backupoptions = [], $fileoptions = [])
Создание резервной копии курса
Аргументы:
- int $courseid - id курса в moodle
- array $backupoptions
- array $fileoptions
Возвращаемые значения:
- boolean
restore_backup($courseid, $restoreoptions = [], $fileoptions = [], $courseoptions = [])
Восстановление курса из резервной копии
Аргументы:
- int $courseid - id курса в moodle
- int $courseid
- array $restoreoptions
- array $fileoptions
- array $courseoptions
Возвращаемые значения:
- int
backup_exists($courseid, $fileoptions = [])
Проверка существования резервной копии курса
Аргументы:
- int $courseid - id курса в moodle
- array $fileoptions
Возвращаемые значения:
- boolean
create_course(stdClass $courseobj)
Создание курса мудл
Аргументы:
- stdClass $courseobj
Возвращаемые значения:
- int
clone_course($mdlcourseid, stdClass $courseobj)
Создание курса на основе существующего курса в Moodle
Аргументы:
- int $mdlcourseid - id курса в moodle
- stdClass $courseobj
Возвращаемые значения:
- int | false - идентификатора курса вслучае успеха и false в остальных случаях

