Subcourse – маленький модуль, устраняющий большой недостаток Moodle

Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -
Количество ответов: 64

Как много нам открытий чудных
Готовит «Modules and plugins»!!!

Хочу поделиться с сообществом той радостью, которую я испытал, познакомившись с модулем Subcourse: http://moodle.org/mod/data/view.php?d=13&rid=1775&filter=1 . Файлы русской и украинской локализации прикрепляю к этому сообщению.

Почему я так радуюсь, что даже на эпиграфы потянуло? Потому, что существенным недостатком (даже по сравнению с куда менее развитыми LMS) было то, что Moodle представлял собой лишь набор независимых курсов. В нем не было Учебного плана (перечня изучаемых дисциплин) и итоговых сведений о том, как студенты этот план выполняют. Moodle не формировал привычных декантатовских простыней, содержащих итоговые оценки всех студентов по всем изучаемым дисциплинам.

Благодаря этому модулю, теперь каждый может создавать какие угодно итоговые таблицы, рассчитывать итоговые рейтинги студентов по всем изучаемым дисциплинам, и все это, пользуясь лишь стандартным средством Moodle – Журналом оценок.

Модуль представляет собой деятельность, которая позволяет импортировать в курс итоговые оценки другого курса. Это дает возможность не только создавать упомянутые выше деканатовские простыни, но и строить дисциплины по иерархическому принципу, когда итоговая оценка за курс вычисляется с учетом результатов изучения подчиненных курсов.

Учитывая отсутствие в Moodle глобальных групп, многие пользователи создавали простые (не мета-) курсы, содержавшие лишь списки студентов, а сами изучаемые дисциплины создавали в виде метакурсов. Так вот именно курсы, содержащие списки студентов, являются удачным местом для размещения в них Субкурсов и создания там итоговых таблиц.

Итак, схема такая.

1. Создаем простые (не мета-) курсы, содержащие поделенные на группы списки студентов, изучающих одинаковый набор дисциплин. Обычно это все группы одной специальности и одного курса. Может кто-то уже сделал один простой курс для одной группы. Это тоже можно, но тогда и рейтинг будет вычисляться в каждой группе отдельно, а не общий рейтинг по всем студентам, изучающим одинаковый набор дисциплин. (Разумеется, возможность фильтрации результатов по группам при этом остается).

2. Создаем метакурсы изучаемых дисциплин и импортируем в них списки студентов из курсов, указанных в п. 1. Рекомендую использовать модуль http://moodle.org/file.php/25/moddata/forum/902/481315/course.tar.gz , позволяющий добавлять и удалять студентов из дочерных курсов вместе с их группами.

3. В указанные в п. 1 курсы вставляем субкурсы всех изучаемых дисциплин. Это могут быть или дисциплины одного текущего семестра, или (если вы хотите рассчитать накопительный рейтинг, за все семестры, начиная с первого), то субкурсы всех изученных дисциплин. Например, в одном разделе курса отображаются дисциплины одного семестра. (Почти учебный план!)

4. С помощью Журнала оценок задаем способ расчета итоговых рейтингов и придаем соответствующий вид итоговой деканатовской таблице.

Теперь и декан может посмотреть Общий отчет и каждый студент может посмотреть свой Отчет пользователя в самом красивом виде.

В завершение о недостатке субкусов, который, я надеюсь, уважаемые коллеги-форумчане смогут скоро устранить. Дело в том, что при изменении итоговых оценок в подчиненных курсах, оценки в субкурсе автоматически не обновляются. Для обновления нужно зайти в субкурс и нажать там кнопку. Если субкурсов много, то это может быть трудоемкой процедурой, и недоразумения могут возникать из-за того, что в деканате эту кнопку нажать забыли. Хорошо было бы создать одну кнопку, по нажатии которой обновлялись бы оценки во всех субкурсах данного курса (и данного семестра, если семестров много). А может лучше это обновление к cron’у прицепить? Как ваше мнение?
В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Vadim Dvorovenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода
По хорошему - только cron. Вопрос только в том, с какой частотой. Система плагинов вроде бы позволяет легко обеспечивать доступ к cron.
В ответ на Vadim Dvorovenko

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Vadim Dvorovenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода
Посмотрел - в нём уже прописаны действия по cron-y, которые вроде бы и обновляют оценки.
Проверьте, насколько часто у вас запускается cron.
В ответ на Vadim Dvorovenko

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -
Ура!!! Действительно, cron сам всё обновляет!
Сron запускается раз в сутки. А какие на сей счет существуют рекомендации?
Одну кнопочку, все же, было бы неплохо иметь, чтобы не ждать cron'а.
В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Александр Анисимов -
Изображение пользователя Майнтейнер перевода Изображение пользователя Эксперт по Moodle
У нас на сайте Крон запускается каждые 5 минут...
Это связано с авторизацией студентов через внешнюю базу данных и последующей заменой метода (скрипт в Кроне) на "ручную регистрацию", чтобы они могли сменить пароль.
И почта работает быстрее...Большая усмешка
Больших неприятностей от частого запуска Крона пока не замечал.
В ответ на Александр Анисимов

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -
Ясно. Спасибо. Значит, нужно просто чаще запускать cron, и никаких переделок для этого модуля не требуется. Посмішка
В ответ на Alexandre Scherbyna

Curriculum mapping

от Artem Andreev -
Изображение пользователя Эксперт по Moodle
Есть еще такая интересная штука: Curriculum mapping.

Описания:
http://moodle.org/mod/forum/discuss.php?d=144396&parent=630723
http://davidtjones.wordpress.com/2010/02/20/the-current-state-of-curriculum-mapping-inwith-moodle/

Презентация:
http://www.slideshare.net/moorejon/introduction-to-elis

P.S. Сам не пробовал, особо не нужно, но может кто-то попробует и потом опишет впечатления...
В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Jury N. Belonozhkin -

1. Создаем простые (не мета-) курсы, содержащие поделенные на группы списки студентов, изучающих одинаковый набор дисциплин. - модуль Subсourse работает и в метакурсе. В этом случае список студентов легко формируется  из готовых групп - дочерних курсов. Правда,  автоматически cron не обновляет оценки (хотя запускается через 5 минут). А вручную формировать списки в простом не мета-курсе получается трудоемко (у меня есть и очники, и заочники, и преподаватели, и администрация вуза). Может есть совет, как решить эту диллему?

В ответ на Jury N. Belonozhkin

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

> автоматически cron не обновляет оценки

Для меня это новость. Если итоговая оценка курса изменилась, то cron должен обновить ее во всех субкурсах.

> вручную формировать списки в простом не мета-курсе получается трудоемко

Но один раз где-то же их надо какт-то сформировать, чтобы потом отсюда во все метакурсы импортировать. Чтобы не делать это вручную, попросите студентов, пусть сами запишутся в этот дочерний курс, дав каждой группе свое кодовое слово. Тогда, в зависимости от введенного кодового слова, каждый студент будет попадать в нужную группу.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Сергей Егоров -

Файл course.tar.gz недоступен по указанной ссылке. А без него и subcourse большого смысла не имеет..... У кого нибудь есть этот файл, содержащий модуль переноса студентов из дочернего курса в метакурс вместе с группами? Положите, пожалуйста, куда-нибудь на видное место улыбаюсь

В ответ на Сергей Егоров

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

Пожалуйста. Выкладываю еще раз прямо сюда.

И еще раз хочу предупредить, что если студент в дочерний курс добавляется уже попсле того, как этот дочерний курс был добавлен в метакурс, то изредка случается, что студент где-то "застряет по дороге". Если такое случится, удалите и снова прибавьте этот дочерний курс. Ничего плохого при этом не случится, все работы и оценки останутся на своих местах.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Сергей Егоров -

то изредка случается, что студент где-то "застряет по дороге". Если такое случится, удалите и снова прибавьте этот дочерний курс. Ничего плохого при этом не случится, все работы и оценки останутся на своих местах.то изредка случается, что студент где-то "застряет по дороге". Если такое случится, удалите и снова прибавьте этот дочерний курс. Ничего плохого при этом не случится, все работы и оценки останутся на своих местах.

Если в дочернем курсе есть группа, в которой ещё нет студентов, то этот курс записывается в метакурс до этой группы, все группы, которые идут за пустой - не копируются..... При добавлении дочерних курсов в метакурс надо проверять, во всех ли группах уже есть записанные студенты....

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Матвей Беляков -

Задам многострадальный вопрос:
Как обстоят дела с разработкой этого модуля для версии 2.2 и 2.3?)

https://github.com/mattgibson/moodle-mod_subcourse - это самое последнее что есть? новее нету?(

 

В ответ на Матвей Беляков

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Jury N. Belonozhkin -

Поставил этот модуль на 2.5 без проблем, оценки собирает также  нормально. Продолжаю разбираться с правами и группами.

В ответ на Jury N. Belonozhkin

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Vadim Tabunshchik -
Изображение пользователя Developers

Поставил этот модуль на 2.5 без проблем

Поставить - это ещё не самое главное улыбаюсь

Вот работать он будет до поры до времени, т. к. использует устаревшие функции (Global function make_categories_list() is deprecated. Please use coursecat::make_categories_list() and coursecat::get_parents()) и методы вызова форм (&MoodleQuickForm::createElement вместо $mform->createElement)
Отладку на "Разработчик" и посмотрите на ошибки.

Я бы сильно на него не рассчитывал, если не обновят модуль, то при следующем обновлении системы он может не работать.

В ответ на Vadim Tabunshchik

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Jury N. Belonozhkin -

Ну я ж не только поставил, меня функционал интересуетулыбаюсь. А именно: субкурс делает, что он и должен делать - собирать оценки из разных курсов в одну большую кучку.

Вообще 2.5 меня пока никак не впечатляет, особенно в части связи мета- и дочерних курсов вместе с группами и ролями.  Поэтому до сих пор и сижу на 1.9.19+ и повышаться не спешу.  

В ответ на Jury N. Belonozhkin

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

Посмотрел эту версию модуля и хочу поделиться результатами с сообществом.

Главная долгожданная новость - модуль Субкурс работает на 2.4, 2.5 и даже имеет больший функционал, нежели его версия для 1.9. Та позволяла лишь импортировать оценки из метакурса дисциплины, а эта версия может еще и экспортировать студентов в метакурс! Для этого в списке способов записи на курс нужно активизировать использование метакурсов (Course meta link) и при добавалении субкурса в его параметрах указать:

В результате в Способах записи на курс метакурса дисциплины появляются студенты экспортированные из дочерних курсов академических групп:

Т.е. получается очень удобно. Создаем дочерний курс академической группы, записываем в нее студентов и добавляем в него субкурсы дисциплин. В результате сюда импортируются итоговые оценки этих дисциплин, а отсюда в те дисциплины экспортируются студенты.

Жаль только, что (в отличие от версии 1.9) в метакурсы дисциплин экспортируются одни студенты, а не студенты вместе со своими группами. Поэтому придется-таки зайти в метакурсы дисциплин, чтобы создать там группы, совпадающие с академическими. Для этого нужно группы добавлять по одной и сразу после добавления тех, кто пока еще в группы не записан, записать в свою группу, пока они не перемешались со студентами других академических групп. Проще всего это делать на страничке Записанные на курс пользователи, щелкая мышкой здесь:

Получается по 2 клика мышкой на студента - многовато. В этом смысле способ записи на курс через глобальные группы (когорты) - лучше. Там при зачислении когорты можно сразу указать в какую группу вся она записывается.

Если студент заходит в дочерний курс своей академической группы, то сразу возле названий изучаемых дисциплин видит свои итоговые оценки:

Это удобно, можно даже журнал оценок не открывать (разве что захочется посмотреть не на отдельные оценки, а на итоговый рейтинг).

Т.е. мне модуль понравился. Единственное, что я увидел не работающим, так это вот эта ссылка на журнал оценок:

и то, только в том случае, если адрес вашего сайта имеет вид my.site.com/moodle, например, а не просто my.site.com.  Надеюсь, наши программисты эту весьма распространенную ошибку исправят, а я выкладываю здесь русский и украинский переводы этого модуля.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Jury N. Belonozhkin -

Отличная новость! Спасибо, Александр за подробное объяснение и перевод! Весь мир мудлеров должен ликовать.
Осталось мне разобраться с когортами и выяснить причину появления пустой белой страницы при открытии в роли админа сайта ссылки Debugging или Notifications. Ну и большая скорость загрузки пустой страницы не очень нравится.

 

В ответ на Jury N. Belonozhkin

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle

Пустая страничка - это ошибка в php. Cмотрите логи веб-сервера.

В ответ на Виталий Лавров

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Jury N. Belonozhkin -

Вставил в корневую папку Moodle файл .htacсess для повышения версии php до 5.3, в логах вижу ошибки:

<b>Deprecated</b>: Directive 'register_long_arrays' is deprecated in PHP 5.3 and greater in <b>Unknown</b> on line <b>0</b><br />
[Wed Jul 03 10:30:31 2013] [error] [client 85.26.183.35] Zend Optimizer requires Zend Engine API version 220060519.
[Wed Jul 03 10:30:31 2013] [error] [client 85.26.183.35] The Zend Engine API version 220090626 which is installed, is newer.

Попытки обращения в техподдержку хостера ни к чему ни привели, мол сами разбирайтесь с CMS. 
Сайт сейчас выдает такую ошибку:

Ошибка 310 (net::ERR_TOO_MANY_REDIRECTS): Обнаружено слишком много переадресаций.

Буду признателен за помощь, а то хочется уже пробовать новые возможности субкурса не локально, а на хостинге. 

В ответ на Jury N. Belonozhkin

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle

Найти упоминания register_long_arrays в коде и закомментировать их.

В ответ на Виталий Лавров

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Jury N. Belonozhkin -

Нашел и закомментировал register_long_arrays только в php.ini, но результат прежний, ошибка 301 - циклическая переадресация.  Кто-то сталкивался с этим?

В ответ на Jury N. Belonozhkin

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle

Вставил в корневую папку Moodle файл .htacсess для повышения версии php до 5.3, в логах вижу ошибки:

Что в файле .htaccess ?

[Wed Jul 03 10:30:31 2013] [error] [client 85.26.183.35] Zend Optimizer requires Zend Engine API version 220060519.
[Wed Jul 03 10:30:31 2013] [error] [client 85.26.183.35] The Zend Engine API version 220090626 which is installed, is newer.

Либо что-то не дописали в .htaccess, либо у хостера что-то не так.

В ответ на Виталий Лавров

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Jury N. Belonozhkin -

В .htaccess моего хостера Infobox записал по их инструкции это:

AddHandler x-httpd-php53 .php

На счет Zendopmizer получил такой ответ хостера:
Из ошибки следует, что необходимо установить более позднюю версию Zend Optimizer.
На хостинге уже установлено расширение для работы с Zend версии 220060519 и переустановить мы его не можем.

Может знает кто-нибудь, как его мне переустановить?

Пробовал ставить на демо-хостинг у других, тоже самое - циклическая ошибка. Есть версии, в чем проблема? (Речь идет о 2.5+, 2.4 и 2.5 также не работают, хотя локально все работает нормально).

В ответ на Jury N. Belonozhkin

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Виталий Лавров -
Изображение пользователя Эксперт по Moodle

Его нужно убрать, т.к. он не предназначен для 5.3

Zend Optimizer  для PHP 5.2
Zend Guard loader для PHP 5.3

Но как это сделать у этого хостера - не знаю.

PS хреновый хостер, раз такие вещи не знает тех.поддержка.

В ответ на Jury N. Belonozhkin

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

Я тестировал модуль локально в среде XAMPP с РНР версии 5.3.5. Ошибок не было.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Jury N. Belonozhkin -

Да я тоже тестировал субкурс локально и без проблем. Не получается запустить саму версию 2,5 на внешнем хостинге, вот в чем проблема. В иноязычных форумах ответа пока не нашел. Кто-нибудь ставил её на внешнем хостинге?

В ответ на Jury N. Belonozhkin

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

Трудности установки 2.5 надо обсуждать не здесь, а в отдельной ветке форума.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Игорь М -

Извиняюсь, а можно ссылочку на скачивание этого модуля под Мудл 2.4.3? Не могу что то в загрузках найти.

В ответ на Игорь М

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -
В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Игорь М -
В ответ на Игорь М

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Игорь М -

Да, кстати, у меня не установился, пока я не переименовал его. Видимо, длинное имя. Переименовал в subcourse - все установилось без проблем.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Валерий Слободин -

Во если бы  в метакурсы дисциплин экспортировались студенты вместе со своими группами, цены бы не было этому способу записи. А так - опять ручная работа. А знаете, сколько у меня групп? В текущем году - 56!!!

Когорты - хорошо, ничего не скажешь! Но они не попадают в журнал оценок! Опять двадцать пять! (поговорка).

Во всем сказывается то, что Moodle не делается для Российской системы образования!

В ответ на Валерий Слободин

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Vadim Tabunshchik -
Изображение пользователя Developers

А так - опять ручная работа. А знаете, сколько у меня групп? В текущем году - 56!!!

А 266 не хотите? И половину записать нужно в 20-30 курсов.

Дело не в системе образования, а в распределении обязанностей, а так, если всем в moodle занимается один админ, то отсюда и "крики души" улыбаюсь

В ответ на Vadim Tabunshchik

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Сергей Егоров -

Вот ещё один крик души. Сделал курс в moodle 2.4.7 назвал его "ООП ".......................(Бакалавриат)", в курсе создал 8 тем с названиями 1 семестр.... 8 семестр. В каждую тему вставил subcourse, которые берут итоговую оценку из соответствующих дисциплин. Всё вроде красиво. Журнал оценок хоть распечатывай и приложением к диплому выдавай. Однако, захожу студентом, вижу: После названия каждой дисциплины написано: Текущая оценка - 61, 7% У всех дисциплин одинаково!!!! Т.е. выводится не итоговая оценка дисциплины, а итоговая оценка всего этого курса, где эти модули subcourse и находятся..... (модуль subcours-****-master, с этого форума скачан).

Р.S. Удалил модуль subcourse, скачал mod-subcours с сайта - он текущих оценок на странице не выводит. Что бы посмотреть оценки приходится открывать журнал оценок. Также эта версия subcourse не содержит никаких заморочек с способами записи в метакурс, и напрочь не хранит backup'ов.... (как и было в модуле для 1.9).

В ответ на Vadim Tabunshchik

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Валерий Слободин -

Глобальные группы есть. Модуль subcourse, позволяющий создать сводную ведомость оценок для группы есть. Чего не хватает? Небольшой автоматизации: создание в каждом курсе локальные группы, одноименные с глобальными. Может найдем исполнителя и профинансируем эту разработку?

В ответ на Валерий Слободин

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Vadim Tabunshchik -
Изображение пользователя Developers

Есть и другое решение: найти специалиста, который возьмется адаптировать FN-Site Groups под 2.5-2.6. Этот блок в 1.9 меня полностью устраивал.

А если просто переделать стандартные функции Moodle, чтобы при создании ГГ создавались и группы в курсах, замаешься потом переносить эти изменения кода при обновлении версии системы.

В ответ на Валерий Слободин

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

Для 1.9 есть переделка, позволяющая записывать в метакурс студентов вместе с их группами, но это работает только в момент записи. Дальнейшей синхронизации групп в дочернем курсе и метакурсах этот метод, увы, не обеспечивает. 

Использование глобальных групп обеспчивает постоянную синхронизацию глобальных групп с группами курса, но их нужно там предварительно создать вручную.

Да, было бы хорошо иметь плагин, который бы автоматически создавал в курсе группы с названиями глобальных.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Валерий Слободин -

Я уже писал (видимо давно). С версией 1.9 нет проблем!!! Давным давно мы профинансировали, а "Открытые технологии" сделали модуль "Деканат", который решает все проблемы. На основе созданного учебного плана формируются учебные группы, наполняются ссылками на дисциплины, в дисциплинах автоматически создаются группы и заполняются студентами, формируются ведомости и зачетки и т.д. и т.п. 

Проблема в переходе на более новые версии Moodle, так как 1.9 уже практически не поддерживается

В ответ на Валерий Слободин

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Vadim Tabunshchik -
Изображение пользователя Developers

Валерий, так модуль "Деканат" есть и для 2.5 (2.4.9 (текущий релиз) - Совместимость с Moodle 2.2, 2.3, 2.4, 2.5. И, я думаю, разработчики будут его поддерживать и дальше. Да

Проблема в том, что не всё так просто, как вы написали, даже с Деканатом. Это, как бы выразиться, ещё один Moodle в Мудле.

Я пытался его внедрить в 1.9, но, когда всё делаешь сам,- извините, я этим заниматься не буду. А сейчас - тем более, Деканат стал ещё более функциональный, "навороченный". Им должен заниматься отдельный специалист, может даже группа.

В ответ на Vadim Tabunshchik

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Валерий Слободин -

Чем он вас не устроил на 1.9? Да, не без недостатков! Но делает все, что нужно для организации учебного процесса. 

А новая версия сделана для школы. Причем сделана полная АСУ! Труд громадный, надо отдать должное. Но 3/4 всего, что там написано - ВУЗам не нужно и только создает проблемы.

Возьмите зачисление учащихся. Приходит мама, заводят данные на ребенка и ученик в БД. А в ВУЗе этим занимается приемная комиссия и мы получаем готовые приказы. А вот импорта студентов у них тю-тю!

 Gj gjdjle FN-Site Groups. Пытались с ним работать в 1.9. Очень низкое качество блока. И работает неустойчиво. Например, группы самопроизвольно отписывались от курсов!!! С появлением 2.х необходимость в нем отпала, потому что есть когорты. Поэтому и версии под 2.4 фирма не стала делать.

Если бы они видны были в журнале оценок и проблем не было бы. А так нужно практически вручную создавать локальные группы в каждом курсе! Кстати, деканат под 1.9 эту операцию делал автоматически!!!

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Vadim Dvorovenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода

Скачал тут последнюю версию модуля subcourse от David Mudrák из Moodle plugins repository. Там оказалась версия, вполне подходящая для 2.4, 2.5 и 2.6. Но в 2.7 эта версия показывала несколько предупреждений по поводу deprecated функций. А так как модуль subcourse мне как раз понадобился очень срочно, решил я эти ошибки подправить. И вот после того, как я подправил это, я внезапно обнаружил, что у меня есть не все элементы, что на скриншотах в этой теме. Поискав, нашёл на гитхабе и такую версию модуля, как здесь, за авторством Matt Gibson. К моему разочарованию, оказалась, что эта версия гораздо старее официальной версии и скорее соответсвует версии 2.2 или 2.3 по стилю кода и объединить эти вде ветви автоматически не представляется возможным. Однако, потратив ещё половину дня всё-таки удалось выковырять нужные куски кода из версии  Matt Gibson и вставить в версию  David Mudrák. Результат вам здесь и представляю - Subcourse 2.7 с возможностью добавления метакурсов. Скачать можно тут: https://github.com/vadimonus/moodle-mod_subcourse/tree/master_David по кнопке Download ZIP. Рассчитано исключительно на версию 2.7, поскольку исправлена под новшества нового API логов. Перевод добавите самостоятельно, тот, что лежит здесь должен подойти. Написал  David Mudrák,  быть может эта версия будет включена в официальную и тогда  её все смогут легко скачать с plugins repository. Ну а пока прошу протестировать и написать мнения.

В ответ на Vadim Dvorovenko

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

Спасибо, Вадим! Вы сделали большое дело. Версия модуля от Matt Gibson лучше именно тем, что автоматически создает мета-курсы. Если все это будет работать в 2.7, то это прекрасно.

Теперь если мы используем не глобальные группы, а снова возвращаемся к мета-курсам, то нам может понадобиться новый плагин синхронизации групп в дочернем и мета-курсе. Я пробовал его первую версию. Что-то у меня не заладилось. Сейчас вышла 1.1, которую я еще не скачивал, правда она тоже только для 2.6. Думаю исправленный вами модуль субкурс + этот плагин могут стать идеальным сочетанием, т.к., надеюсь, с ними будет работать проще, чем с глобальными группами.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Татьяна Сергиенко -

У меня получилось сочетание модуль субкурс + плагин синхронизации групп в дочернем и мета-курсе.

Плагин Meta-course synchronization to groups работает лучше всего, если вы создаете зачисление Связь с мета-курсом между курсами.

Потом создаете группы с поделенными студентами в Простом (не мета-) курсе.

В ответ на Татьяна Сергиенко

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

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

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Татьяна Сергиенко -

версия moodle 2.7.7,

модуль субкурс и плагин синхронизации оба последней версии с сайта moodle.org

Протестировать эту связку на сайте удачно получилось на прошлой неделе.

В англоязычном форуме нашла что именно в такой последовательности надо делать и тогда можно обойтись без запуска скрипта sync.php, с ним у меня еще работа не налажена (не вижу на сайте результатов его действия).

В ответ на Татьяна Сергиенко

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

Да, но как вы будете создавать группы в дочерних курсах потом? Они создаются один раз, когда на первый курс принимают новую академическую группу. А во всех последующих семестрах мы имеем ситуацию, когда группы в дочерних курсах уже сформированы, а нам нужно создать новые субкурсы в дочерних курсах, возможно, новые группы в мета-курсах, новые связи курс-метакурс (хотя при использовани версии модуля субкурс от Дворовенко эта связь устанавливается при создании субкурса), как-то настроить модуль синхронизации групп групп в дочерних и мета (с запуском  sync.php или без). Как и в какой последовательности? Можете расписать по пунктам? Спасибо.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Татьяна Сергиенко -

1. Создаем простой курс, например, название академической группы.

2. Создаем курсы-дисциплины закрепленные за 1 семестр, например.

3. В каждом курсе-дисциплине устанавливаем способ записи на курс «Связь с метакурсом» и выбираем простой курс.

4. Переходим в простой курс, зачисляем студентов любым способом, разбиваем их на группы и т.д. Все наши действия автоматически отражаются в курсах-дисциплинах.

5. Это все касается вопроса, когда мы хотим зачислить студентов на один простой курс, а студенты автоматически зачисляются на дисциплины 1 семестра, например, уже с разбивкой на группы.

6. После этих действий можно в простом курсе вставлять субкурсы на дисциплины 1 семестра, например.

7. Интересная ситуация, когда нужно добавить субкурсы на дисциплины 2 семестра, например. Там же уже созданы группы. Действия следующие: удаляем группы и заново создаем с соответствующим составом студентов или разбираемся, как правильно нужно запускать sync.php.

8. Общий принцип такой. Сначала устанавливаем связь курса-дисциплины с простым курсом. Затем делаем все необходимые действия со студентами в простом курсе.

В ответ на Татьяна Сергиенко

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -
Спасибо, Татьяна. Хотел бы только уточнить одну деталь. Вы пишите:
Затем делаем все необходимые действия со студентами в простом курсе.

А какие именно действия со студентами вы выполняете в простом курсе, если списки академических групп не менялись? Предположим, как приняли студентов на 1-й курс так они и проучились до 5-го.

В ответ на Татьяна Сергиенко

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Vadim Tabunshchik -
Изображение пользователя Developers
тогда можно обойтись без запуска скрипта sync.php, с ним у меня еще работа не налажена (не вижу на сайте результатов его действия).

Лучше работать с этим скриптом. Запускать его нужно через консоль. В линуксе, например:

/usr/local/bin/php /www/moodle/local/metagroups/cli/sync.php

Опции для команды можно посмотреть в самом скрипте.

Одно важное замечание: в курсах-дисциплинах, в кот. нужно импортировать группы из "простой курс, например, название академической группы" (ваша цитата), обязательно должен быть включен групповой режим в настройках курса. Иначе группы не импортируются.

Может из-за этого вы и не видите на сайте результатов действия скрипта.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Vyacheslav Vinogradov -

Доброго времени суток.


При тестировании subcourse возникла проблема

В текущем курсе пусть, создали субкурс, который ссылается на другой, уже целевой курс. Студенты, записанные на текущий курс, автоматически, с помощью метода "метакурсов" записались на тот, целевой. В течении, допустим, семестра, обучились, получили оценки. Итоговая оценка отображается в текущем курсе. Теперь, отчисляем студентов из целевого курса. В текущем курсе, названным, кстати, именем группы, оценки по целевому курсу тоже пропадают. Видимо пробегается крон и по непонятной причине очищает из текущего курса оценки целевого курса, с которого студентов отчислили. Вроде как, по описанию, этого происходить не должно. Оценки должны остаться в текущем курсе. (Отмечу, что настройка об неуделении оценок при отчислении пользователей с курса стоит).

Не подскажете, уважаемые, что не так?

В ответ на Vyacheslav Vinogradov

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

Раньше при удалинии студентов из целевого курса их оценки в субкурсах сохранялись. Теперь пропадают? Интересно, какая у вас версия Moodle? Если поведение модуля субкурс действительно изменилось, то может тогда перед удалением студентов следует блокировать их оценки в журнале (замочки закрывать)? Попробуйте, и напишите нам что получилось, пожалуйста.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Vyacheslav Vinogradov -

Доброго времени суток.

Сейчас версия 2.7.7.

Воспользовался Вашим советом. Вроде как получилось. Оценки теперь не очищаются.

Огромнейшая благодарность улыбаюсь

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Sergey Ab -

День добрый!

Кто-нибудь Multi Course Grader report для аналогичных целей использовал?

В ответ на Sergey Ab

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

Там вы просто выбираете студента и вам один за другим выводят стандартный Отчет пользователя (содержащий и итоговые и текущие оценки) по всем курсам, на которые этот студент записан. Есть аналогичный отчет, который выводит такие же Отчеты пользователя, но по всем студентам одного курса. Получается очень много таблиц, в которых нужная информация присутствует, но пользоваться ею неудобно.

Субкурс позволяет вам получить в Журнале оценок единственную табличку, где по строкам студенты, а по столбцам итоговые оценки всех изучаемых курсов.

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Oleksandr Szpinkowski -

Скажите, можно ли перейти по ссылке на субкурс одним нажатием клавиши, без дополнительного подтверждения? Спасибо

В ответ на Oleksandr Szpinkowski

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Vadim Tabunshchik -
Изображение пользователя Developers

Студент переходит по ссылке за один клик, если в настройках субкурса поставить галку «Перенаправлять в связанный курс».

У пользователя с правом 'mod/subcourse:fetchgrades' (получать оценки из субкурса) откроется доп. окно /mod/subcourse/view.php?id=ххх с кнопками «Просмотреть все оценки курса» и «Получить оценки».

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Владислав Долгий -

Здравствуйте. Подскажите, есть ли возможность в субкурсе выбрать конкретный элемент оценивания из журнала оценок в связанном курсе? (выбирается итоговая оценка за весь курс, а нужно что бы выбирался созданный элемент оценивания).

В ответ на Владислав Долгий

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

Субкурс всегда импортирует в курс X только итоговую оценку курса Y.

Я не знаю, что такое "созданный элемент оценивания", находящийся в курсе Y, но, возможно, вашу задачу можно решить, если этот самый "созданный элемент оценивания" поместить отдельный курс Z и с помощью субкурсов вставить оценку за курс Z в курсы X и Y?

А может сам курс Y можно переделать так, чтобы настоящая итоговая оценка помещалась в рядовом столбце журнала оценок, а то, что вы хотите импортировать в курс Х, формально совпадало с итоговой оценкой курса Y?

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Владислав Долгий -

Вот что я имею ввиду: 

т.е. субкурс должен брать мою оценку "оценка для деканата...", фактически сейчас проблема решается заведением формулы в "итоговая оценка за курс" = "оценка для деканата...". А если будет несколько таких оценок - "оценка для деканата...", тогда уже непонятно как реализовать субкурс. (пару курсов уже есть с несколькими созданными элементами оценивания)

В ответ на Владислав Долгий

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Alexandre Scherbyna -

Что значит "реализовать субкурс"? Плагин субкурс уже реализован. Вы хотите пользоваться существующим плагином или будете создавать собственный, где появится возможность выбора экспортируемой оценки? Если вы способны сделать такое, то вам многие будут благодарны.

Что же касается существующего плагина, то, как уже было сказано выше, он экспортирует из курса Y в курс X итоговую оценку курса Y. Точка!

Вам нужно несколько оценок, но вы не объясняете каких...

Если это итог курса Y за сентябрь, итог курса Y за октябрь..., то можете создать в курсе Х несколько деятельностей субкурс, имеющие ссылку на тот же курс Y. В конце сентября заблокируете в Журнале оценок курса Х оценку, импортируемую первым субкурсом, в конце октября - вторым...

Если это оценка за 1-й модуль, оценка за 2-й модуль..., то, (как, опять же, говорилось выше), можно сделать для каждого модуля отдельный курс и импортировать оценки модулей и в объединенный курс этой дисциплины, и в объединенный курс всех дисциплин (для деканата).

В ответ на Alexandre Scherbyna

Re: Subcourse – маленький модуль, устраняющий большой недостаток Moodle

от Petr Khl -
Здравствуйте.

Хотел поделиться нашим вариантом решения проблемы аналогичной с проблемой Владислава.

У нас для каждого предмета каждый год создается свой курс. Поэтому в каждом кабинете есть 2-3 оценки которые надо перенести в зачетку.

Данная задача решается нами таким образом:


Итоговая оценка используется нами как хранилище всех трех оценок.

Значение в нее помещаемое рассчитывается по следующей формуле =semestr1+semestr2*0,01+exam*0,0001 где, semestr1 — оценка за первый семестр, semestr2 — оценка за второй семестр и exam — оценка за экзамен. Число получаемое в данном случае двузначное с дробной часть до 4 разряда.

Данная итоговая оценка потом извлекается с помощью модуля субкурс в нужном курсе.

Далее в этом курсе создаются 2-3 оценки, шкалы у которых совпадают со шкалами оригинальных оценок и присваиваем их формулам следующие значения


=round(disciplina1;0) - semestr1

=mod((disciplina1*100);100) - semestr2


=mod((disciplina1*10000);100) - exam


где, disciplina1 это название нашего элемента субкурс.


Данная методика подходит для шкал в которых менее 50 элементов (так как не нашел функции кроме round отделяющей целую часть от дробной).