Moodle

Система тестирования работников
Охрана труда, Пожарная безопасность и другие вопросы
Аватара пользователя
Артём Мамзиков
Admin
Сообщения: 306
Зарегистрирован: Вс фев 17, 2019 17:47
Репутация: 4
Откуда: Вологодская область
Контактная информация:

Moodle

Сообщение Артём Мамзиков » Пт дек 25, 2020 18:55 #1

Нужна была система для тестирования работников в электроном виде.
Со следующими требованиями
Бесплатная с открытым кодом
Вопросы должны меняться (из банка вопросов) ответы так же местами меняться хоатично
Обязательно авторизация через LDAP Домен
Вывод результатов виде таблицы и других отчетов

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

Варианты которые еще попались более подходящие под требования
https://academtest.ru/
http://opentest.com.ua/skachat/ - бесплатно

Moodle — система управления курсами (электронное обучение), также известная как система управления обучением или виртуальная обучающая среда.
Modular Object-Oriented Dynamic Learning Environment (модульная объектно-ориентированная динамическая обучающая среда). Представляет собой свободное (распространяющееся по лицензии GNU GPL) веб-приложение, предоставляющее возможность создавать сайты для онлайн-обучения.

Официальный сайт Moodle
Официальные реализы
На ГитХабе

Установка на ALTLinix
Устанавливаем Веб Сервер модули PHP и базу данных MySQL

Обновимся для начала
apt-get update - загрузка списков пакетов из репозиториев и "обновление" их
apt-get upgrade - обновляет пакеты, которые уже установлены в системе и доставляет новые пакеты-зависимости

apt-get install apache2
apt-get install apache2-mod_php7
apt-get install php7-mysqlnd php7-devel php7-curl php7-mysqli php7-pdo_mysql php7-ldap php7-openssl php7-dom php7-xmlreader php7-intl php7-fileinfo php7-mbstring php7-xmlrpc php7-soap php7-gd2 php7-mcrypt php7-zip libzip2 php7-zip

Следующие дополнительные пакеты будут установлены:
apache2-httpd-prefork
libmm
php-base
php7
php7-libs
apache2-httpd-prefork
apache2-mod_php7
libmm php-base php7
php7-libs


Далее включаем модуль
a2enmod mod_php7
В /etc/httpd2/conf/sites-available/default.conf меняем строки так
#DocumentRoot "/usr/share/doc/indexhtml/ "
DocumentRoot "/var/www/html/"
#<Directory "/usr/share/doc/indexhtml/">
<Directory "/var/www/html/">
Дописать внизу
Alias /doc "/usr/share/doc/indexhtml/"
<Directory "/usr/share/doc/indexhtml/">
Include conf/include/Directory_html_default.conf
</Directory>

В /etc/httpd2/conf/include/Directory_html_default.conf дописываете в строку
#Options Includes FollowSymLinks MultiViews
Options Indexes Includes FollowSymLinks MultiViews

chkconfig httpd2 on
chmod 777 /etc/init.d/httpd2
/etc/init.d/httpd2 start
service httpd2 start


Создадим проверочный Индексный файл
cat >> /var/www/html/index.php
<?php phpinfo(); ?>

ctrl+d
http://192.168.хх.хх/index.php - проверим работу

Установка Базы Данных
apt-get install MySQL-client MySQL-server phpmyadmin
Следующие дополнительные пакеты будут установлены:
liblz4
MySQL-client
MySQL-server


Далее включаем
chkconfig mysqld on
Запускаем
service mysqld start
Первоначальная настройка
/usr/bin/mysql_secure_installation

Конфигурации
/etc/init.d/mysqld
/etc/my.cnf.d/server.cnf
/var/lib/mysql/dev

Вход БД
mysql -u root -pПароль

Создать базу
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 СОРТ utf8mb4_unicode_ci;
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;


Создать комбинацию пользователя / пароль с соответствующими правами доступа для базы данных. Так, например (MySQL снова):
MySQL> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, создавать временные таблицы, DROP, INDEX, ALTER ON Мудл * TO 'moodleuser' @ 'локальный' ОПРЕДЕЛИТЬ ПО 'ВАШ ПАРОЛЬ';
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 'moodleuser'@'localhost' IDENTIFIED BY 'yourpassword';

Примечания: Важно GRANT ON Мудл * в качестве имени базы данных, включая и не только имя голой базы данных. «*.».
Сохранить пароль, используемый для пользователя Moodle, так как вы будете нуждаться в этом позже в установке


Скачиваем
wget https://download.moodle.org/stable37/mo ... est-37.tgz
затем распаковать / разархивировать / переместить / скопировать код Moodle
Создайте пустой каталог для хранения файлов Moodle дать права на запись
/var/www/html/moodle
Распаковка
tar -zxvf moodle-latest-37.tgz
Удаление Архива
rm -f moodle-latest-37.tgz
Переход в извлеченную папку
cd /root/moodle
Копирование содержимого папки
cp -a . /var/www/html/moodle
Удаление извлеченной папки
rm -rf moodle

дать разрешение на директорию
chmod 755 /var/www/html -R

создать папку для данных
mkdir /var/www/moodledata
chmod 777 /var/www/moodledata


Настройка
http://IP-сервера/moodle/install.php Веб установка
или вручную
найти config-dist.php скопировать его с именем config.php
далее настроить config.php

Установка
требуется CLI версии PHP
/usr/bin/php /path/to/moodle/admin/cli/install.php
CLI создает config.php для вас и не будет работать, если вы создали один в предыдущем шаге
после настройки проверить права moodle
Тест установка.jpg
Тест установка.jpg
Исправляем ставим недостающие пакеты
Тест установка2.jpg
Тест установка2.jpg
Настройка Cron
Рекомендуются , чтобы крон запускаются каждая минута , как это требуется для асинхронного удаления активности при использовании корзины
crontab -e
* * * * * /usr/bin/php /path/to/moodle/admin/cli/cron.php >/dev/null
там i сохранить :wq
http://127.0.0.1:8888/moodle/install.php

/etc/apache2/mods-available/dir.conf это «index.html index.cgi index.pl index.php index.xhtml index.shtm
/var/www/moodle/config.php убрать путь на директорию moodle если нужно сделать ссылку без moodle

Задаем
почта Логин Пароль

Далее Настраиваем связь с Доменом LDAP и заполнение полей анкет ФИО Отдел Должность и тд
https://docs.moodle.org/37/en/LDAP_enrolment - зацепить для групп
Администрирование - Плагины - Способы записи - Регистрация из LDAP (enrol_ldap) - Установить

LDAP Настройки http://test.ru/admin/settings.php?secti ... ettingldap
Администраторы сайта http://test.ru/admin/roles/admins.php
Оценки http://test.ru/grade/export/xls/index.php?id=2
Настройка журнала оценок http://test.ru/admin/settings.php?secti ... essettings

Поля профиля пользователя в экспортируемой оценке firstname,lastname,description,institution,department

Отчество например Сопоставление данных (Имя - фонетическая запись) field_map_firstnamephoneti но имя отчество в ldap все вместе

username, password, firstname, lastname, email
логин (имя пользователя), пароль, Имя, Фамилия, адрес эл.почты

institution, department, city, country, lang, auth, timezone
Организация, отдел, город, страна, язык, метод аутентификации, часовой пояс

idnumber, icq, phone1, phone2, address, url, description, mailformat, maildisplay, htmleditor, autosubscribe, course1, course2, course3, course4, course5, group1, group2, group3, group4, group5, type1, type2, type3, type4, type5
номер id, icq, телефон 1, телефон 2, адрес, url сайта, описание, формат почты, показать e-mail, html-редактор, подписка, курс1, курс2, курс3, курс4, курс5, группа1, группа2, группа3, группа4, группа5, тип1, тип2, тип3, тип4, тип5, роль1, роль2, роль3, роль4, роль5

timemodified Дата и время
timestart - тест начат
timefinish - тест завершен

Методы экспорта оценки - Checklist - Контрольный список
Если вы хотите изменить информацию о пользователе, который входит в экспортном ( «Имя», «Фамилия» и т.д.), а затем отредактировать файл moodle/grade/export/checklist/columns.php» - инструкции можно найти внутри сам файл.

Отчеты по сайту - Специальные запросы к базе данных
http://test.ru/report/customsql/index.php

Личный кабинет > Курсы > Мини тестирование > Оценки > Управление оценками > Экспорт > Таблица Excel
XLS - стандартный
http://test.ru/grade/export/xls/export.php

Вид отчета нас не устроил и мы сделал свой в виде таблицы
Выгрузка результатов тестирования.jpg
Выгрузка результатов тестирования.jpg

Аватара пользователя
Артём Мамзиков
Admin
Сообщения: 306
Зарегистрирован: Вс фев 17, 2019 17:47
Репутация: 4
Откуда: Вологодская область
Контактная информация:

Moodle

Сообщение Артём Мамзиков » Пт дек 25, 2020 20:13 #2

Пример Теста
1MoodleПример.jpg
1MoodleПример
2MoodleПример.jpg
2MoodleПример
3MoodleПример.jpg
3MoodleПример
4MoodleПример.jpg
4MoodleПример
5MoodleПример.jpg
5MoodleПример
6MoodleПример.jpg
6MoodleПример
8MoodleПример.jpg
8MoodleПример
9MoodleПример.jpg
9MoodleПример
Стандартный раздел
Оценки MoodleПример.png
Оценки MoodleПример.png

Ответить Вложения 12

Вернуться в «Moodle»