Задание: Создать конструктор опросников и тестов в виде плагина для сайта на WordPress (Дистанционная работа)
Сайт на CMS WordPress
Необходимо создать конструктор, через который зарегистрированные пользователи смогут создавать онлайн опросники и тесты на определённые темы. Реализовать в виде отдельного плагина.
Подробности:
1) Пример опросника - https://yasnoeutro.ru/wp-content/uploads/PHQ9.pdf. За каждый ответ присваивается определённое количество баллов (в данном примере - от 0 до 3). После ответа на все вопросы, количество баллов суммируется и получаем результат и его интерпретацию.
Вот реализованный онлайн опросник, который приведён выше в качестве примера: https://www.b17.ru/tests/phq-9/
2) Подобных опросников очень много, с разным количеством вопросов, разным количеством ответов. Необходимо создать конструктор, который позволит создавать подобные опросники и тесты, как выше.
3) Создатель опросника (зарегистрированный пользователь) может задавать следующие параметры:
- название теста/опросника
- описание и инструкции к выполнению
- вопросы/утверждения (без ограничений по количеству)
- какие вопросы/утверждения обязательные к ответу (по умолчанию - все обязательные), а какие - нет (например, галочку ставить - что ответ на этот вопрос/утверждение не обязательный).
- расставлять вопросы в определённом порядке, даже после того, как они созданы, но пока не опубликованы. То есть чтоб создатель мог их перетаскивать с одного места на другое или менять нумерацию. На фронте вопросы/утверждения показывать в том порядке, как они сформированы на момент публикации.
- задавать варианты ответов к вопросам/утверждениям (без ограничений по количеству)
- задавать количество баллов за каждый ответ
- описание результатов теста (несколько вариантов результатов. Показывать будет один, в зависимости от того, сколько баллов набрано)
- редактировать свой тест до момента публикации на сайт. После публикации создатель теста (зарегистрированный пользователь) уже не может его редактировать.
4) Если после прохождения теста нажать кнопку "получить результат", то страница обновляется и на экран выводится результат в виде количества баллов и описания результата.
5) Если пропущены (то есть на них нет ответа) обязательные к ответу вопросы/утверждения, то кнопка "получить результат" активная, но не яркая. При нажатии на такую кнопку перенаправить пользователя на первый пропущенный обязательный пункт и добавить надпись: для получения результатов необходимо заполнить данный пункт. Если их несколько, то после заполнения первого пропущенного пункта, перенаправить на следующий и так далее. После заполнения всех пунктов перенаправить на кнопку "получить результат" и она уже должна светиться ярче.
6) Есть тест, в котором учитываются сразу несколько параметров. Например, тест по шкале HADS. В этом тесте всего 14 вопросов, 7 направлены на определение тревоги, 7 на определение депрессии. Эти вопросы чередуются. После прохождения этого теста выдается сразу 2 результата: уровень тревоги и уровень депрессии. Тест как бы один, но учитывает несколько модальностей. Вот как он реализован на одном из сайтов - https://www.b17.ru/tests/hads1/.
То есть нужно сделать разновидность опросников, которые показывают сразу несколько результатов (модальностей), как в случае со шкалой HADS. Это как будто несколько тестов, визуально объединенных в один, но результаты выдаются в разных модальностях.
7) важно дать зарегистрированным пользователям возможность создавать такие опросники и отправлять их на проверку в админку сайта. Если опросник после проверки одобрен, то он автоматически публикуется на сайте, а создатель теста теряет возможность его редактирования.
8) создать страницу на сайте, где эти опросники будут опубликованы. При создании страницы использовать корпоративные стили и цвета сайта.