Добрый день, уважаемые эксперты!
Недавно перешли на версию 3.1 и столкнулись с такой проблемой. Она уже была в предыдущих версиях (https://tracker.moodle.org/browse/MDL-44267), но теперь вернулась с еще большей силой.
Проблема в том, если в множественном вычисляемом вопросе с несколькими попытками выделить все ответы (или большее их предполагаемого кол-ва), то натыкаешься на ошибку:
Coding error detected, it must be fixed by a programmer: PHP catchable fatal error
Error code: codingerror
- line 425 of /lib/setuplib.php: coding_exception thrown
- line 475 of /question/type/multichoice/question.php: call to default_error_handler()
- line 488 of /question/type/multichoice/question.php: call to qtype_multichoice_multi_question->disable_hint_settings_when_too_many_selected()
- line 109 of /question/behaviour/interactive/behaviour.php: call to qtype_multichoice_multi_question->get_hint()
- line 86 of /question/behaviour/interactive/behaviour.php: call to qbehaviour_interactive->get_applicable_hint()
- line 112 of /question/behaviour/behaviourbase.php: call to qbehaviour_interactive->adjust_display_options()
- line 829 of /question/engine/questionattempt.php: call to question_behaviour->render()
- line 449 of /question/engine/questionusage.php: call to question_attempt->render()
- line 253 of /question/preview.php: call to question_usage_by_activity->render_question()
Например, вопрос 1 имеет ответы
={a} (+100%)
=2*{a} (-50%)
При этом дается возможность нескольких попыток. Если при ответе выделить оба вырианта, то выйдет эта ошибка.
Если в предвдыдущей версии студент мог после этого продолжить тест, то теперь продолжить он не может, и попытка у него висит, пока не выйдет время (а оно у преподавателя выставлено 2 дня).
Большое спасибо!