[UserTest] - добавлено событие на окончание прохождения теста.

В новой версии UserTest добавлено событие на окончание прохождения теста пользователем — OnTestComplect. Теперь можно писать плагины которые будут выполнять какие-либо действия при финише теста.
Также добавлен 1 такой плагин: отправка письма преподавателям. Емайл преподавателей можно отдельно указать в системной настройке usertest_teachers_email, через запятую.
Александр
09 июля 2018, 09:06
249
+2

Комментарии: 7

Pavel Zarubin
09 июля 2018, 12:56
+2
Спасибо за инфу, но такое маленькое обновление с таким скудным описанием без кейсов и прочего действительно достойно отдельного топика на modx.pro? При всем уважении к автору
    Александр
    09 июля 2018, 16:12
    0
    Ну когда топик выкладываешь, лучше покупают. Обновление маленькое, но повод напомнить :). Стараюсь не спамить, но что-то по краю спама пошел :(. Извиняюсь если что не так.
      Pavel Zarubin
      09 июля 2018, 16:50
      0
      Ну лично мое мнение что даже такое обновление можно было подать красиво, например описать как именно можно применить это событие на практике, элементарно сделать например элементарную отправку сообщения администратору и пользователю который проходил тест. Или например изменение каких то данных при каких то условий по этому событию с кодом естественно. Это первое что в голову пришло, ваш компонент не использовал, но для чего то же вы добавили это событие)
        Александр
        09 июля 2018, 17:11
        0
        К сожалению, я чисто программист и подавать красиво не сильно умею :(. На практике, можно отправить отправку сообщения администратору. Что и сделано. Но в сообщении, можно, не только итоговый балл, как сейчас, отправлять но еще и отправить отчет со всеми ответами пользователя. Можно прикрутить счетчик пройденных тестов. Больше вариантов, пока, в голову не приходит :). Событие сделано чтоб программисты не лезя в основной код могли что угодно сделать по окончании сеанса тестирования. Мне в голову не приходит что еще можно, но Думаю что-нибудь оригинально придумают.
      Здоров Александр
      09 июля 2018, 16:56
      0
      а есть разделение, с какого теста какому преподавателю отправлять результат?
        Александр
        09 июля 2018, 17:12
        0
        Вот и придумали. В текущем плагине нету. Но переписать плагин для этого не сложно :).
        Александр
        09 июля 2018, 17:19
        0
        В плагине usertest сейчас
        /*Адрес получателя нашего письма*/
        		$teachers_email = explode(",",$teachers_email);
        		foreach($teachers_email as $te){
        			$modx->mail->address('to', trim($te));
        		}
        Можно вместо этого сделать примерно так:
        switch($test['id']){
        	case 1:
        		$modx->mail->address('to', 'teacher1@mail.ru');
        	break;
        }