воскресенье, 8 января 2012 г.

Создание модуля в Moodle 2.x типа activity (часть 1)

Модули типа activity в Moodle позволяют вовлечь студентов в некоторую "образовательную деятельность": интерактивное решение тренировочных задач, видеочат с учителем и группой других студентов, и т.д. По результатам участия в такой деятельности студенты могут получать оценки.

Насколько мне известно, информация по созданию таких модулей пока доступна только по Moodle 1.9. В данном посте будут изложены результаты по адаптации этой информации к Moodle 2.2.

Для начала необходимо скачать шаблон нового модуля. Я назвала свой модуль itask (поскольку в дальнейшем его планируется переделать в модуль для интерактивного решения задач). Далее во всех файлах с расширением php скачанного шаблона необходимо поменять слова newmodule и NEWMODULE на itask и ITASK соответственно. Я это сделала с помощью программы TextCrawler. Также в папке <...>/lang/en необходимо поменять имя файла с newmodule.php на itask.php. Затем переименовываем скачанную папку шаблона модуля в itask и копируем ее в корень папки /moodle/mod (в этой папке содержатся все модули).

Согласно туториалу, редактируем базу данных с помощью XMLDB editor, обновляем файл version.php, и т.п. В общем, выполняем п. 6 и 7 туториала.

Далее, согласно книге "Moodle 1.9 Extension Development", мы должны отредактировать в папке нового модуля файл mod_form.php. В результате ее редактирования мы должны получить форму вот такого вида:
Эта форма появляется на экране, после того, как к некоторой теме (или неделе курса, смотря как у кого в настройках) добавляется activity типа itask:
Пока шаблонный код не отредактирован, эта форма выглядит вот так:
Попробуем видоизменить эту форму так, чтобы на ней осталось только единственное обязательное поле "itask name". Для этого закомментируем некоторые строки, обновим файл version.php, далее в меню Moodle зайдем в Администрирование->Уведомления и нажмем там кнопку "Обновить". Ниже приведен код, оставшийся незакомментированным в теле функции definition (файл mod_form.php):
Этот код генерирует вот такую форму:

Комментариев нет:

Отправить комментарий