Перейти к содержанию

Решение проблем

Наши плагины постоянно дорабатываются. Если Вы нашли ошибку или столкнулись с проблемой при использовании плагина или Вам необходима функциональность, которая отсутствует в настоящий момент в наших плагинах, пожалуйста сообщите нам по адресу: help@directmedia.ru

Как известно платформа LMS Moodle расширяется при помощи плагинов различных типов. Сторонними разработчиками создана обширная экосистема дополнений Moodle plugins directory. Протестировать работоспособность плагина со всеми видами других плагинов не представляется возможным. Именно поэтому в редких случаях пользователи могут сталкиваться с различными проблемами.

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

После установки mod_biblioclubrubook вместо админки белый экран

Данная проблема связана с особенностями различных версий php. В ранних версиях плагина mod_biblioclubrubook использовались синтаксические конструкции языка php версии 7.3. При установке плагина в Moodle под управлением ранней версии php (например, 7.1) могла возникнуть проблема "белого экрана" административного экрана LMS Moodle.

Решение: загрузите и установите последнюю версию плагина mod_biblioclubrubook - скачать. Перед установкой новой версии необязательно удалять старую версию - Moodle автоматически выполнит обновление.

Открытие просмотрщика книги в новой вкладке. Формат курса "плитка".

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

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

В коде плагина format_tiles автором в явном виде задается поведение ссылок для различных модулей. К автору плагина уже обращались другие разработчики с аналогичной проблемой, но и сейчас в коде последней версии мы видим строгое сравнение по названию стороннего модуля:

Еще один пример

Решение #1

Самый простой способ решения проблемы - отредактировать файл [папка_с_moodle]/course/format/tiles/classes/output/course_output.php. В этом файле необходимо найти метод course_module_data() (строка 896). В данном методе после блока с условием обработки модуля folder (сразу после строки 1066) добавьте следующий код:

   if ($mod->modname == 'biblioclubrubook') {
            $moduleobject['onclick'] = str_replace('&', '&', $mod->onclick);
            $moduleobject['launchtype'] = 'resource-popup';
    }

В итоге должен получиться следующий код:

Все готово. После этого все ссылки на просмотр объекта нашего модуля mod_biblioclubrubook (просмотр книги из ЭБС УБО) будут открываться как надо - в новой вкладке браузера.

Минус этого подхода в том, что если разработчик плагина format_tiles обновит плагин и LMS Moodle его автоматически загрузит и обновит в системе, то все внесенные нами изменения пропадут и их придется снова добавить.

Следует заметить, что плагин format_tiles не обновлялся с 17 сентября 2021 года.

К сожалению, в настоящее время нам не удалось найти способа изменить отображение объекта книги из нашего модуля mod_biblioclubrubook в формате курса "Плитка", т.е. без изменения самого кода плагина format_tiles.

Решение #2

Чтобы обойти данную проблему мы добавили специальную настройку в плагин mod_biblioclubrubook (начиная с версии 1.2).

Принудительное открытие просмотра в новом окне - включите данную опцию, чтобы принудительно открывать окно с контентом книги в новой вкладке.

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

Мы используем функцию JavaScript window.open сразу после загрузки страницы. Без пользовательских событий открытие всплывающего окна из JavaScript приводит к отображению в браузере сообщения о блокировке этого окна.

Результат работы плагина mod_biblioclubrubook с включенной опцией Принудительное открытие просмотра в новом окне после того, как пользователь разрешил всплывающие окна с сайта

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

Выберите способ, который наиболее Вам подходит. Следите за обновлениями данной страницы.

Книга доступна на платформе ЭБС УБО, но не находится в поиске плагина

До версии плагина 1.7 использовался простой механизм поиска книг на основе предустановленных стандартных фильтрах. Начиная с версии 1.7 мы внедрили механизм расширенной проверки прав с использованием специального микросервиса платформы ЭБС УБО - CHUA3.

Микросервис позволяет проверить права на доступ к книге для пользователей ВУЗа (студентов и преподавателей) исходя из доступной подписки конкретного учебного заведения.

Данный подход позволяет корректно отображать доступные пользователям книги в случае если книга по каким-либо причинам перестала быть доступной. Например, истек срок договора с правообладателем книги, однако подписка на книгу есть у ВУЗа и она оплачена. В этом случае книга должна быть доступна всем пользователям ВУЗа.

Решение

Обновите модуль/плагин mod_biblioclubrubook до версии 1.7.