Гайд актуален для владельцев новой версии WT с плеером курсов 2021.
За помощь в поиске решения спасибо Андрею! (@Support.WebSoft)
Проблема
Хочется уйти от таких стандартных всплывающих окон и дать возможность пользователю переключаться между модулями курсов или закрывать сам курс по кнопке в курсе.

Еще у некоторых пользователей бывает проблема, что при нажатии на кнопку выхода сам курс закрывается, но плеер остается жить и вместо пройденного модуля выдается страница 404 или goodbye.html.
Решение проблемы
Используйте JS код на кнопках. Для большинства редакторов курсов это не является проблемой.
//Переключить на следующий модуль
const playerApp = window.parent.document.querySelector('#app');
if (playerApp !== null) playerApp.__vue__.$store.dispatch('learning/goNextPart');
//Закрыть вкладку с курсом
const playerApp = window.parent.document.querySelector('#app'); if (playerApp !== null) playerApp.__vue__.$store.dispatch('app/close');
//Закрыть вкладку с курсом и сделать редирект:
const playerApp = window.parent.document.querySelector('#app'); if (playerApp !== null) playerApp.__vue__.$store.dispatch('app/redirect', "https://ya.ru");
//Завершить курс (Пройден/Не пройден будет зависеть от настроек условий успешного прохождения)
const playerApp = window.parent.document.querySelector('#app'); if (playerApp !== null) playerApp.vue.$store.dispatch('learning/finishCourse);Как быть тем, у кого iSpring?
Очень просто. На кнопку повесьте действие «Выполнить программу» и в пустое поле вписываете javascript:код_нужного_действия. Пример ниже.
javascript:const playerApp = window.parent.document.querySelector('#app'); if (playerApp !== null) playerApp.__vue__.$store.dispatch('learning/goNextPart');Если вы опубликовали курс и закрыли исходник курса, то при повторном открытии исходника JS код нужно вставить снова. iSpring или PP не может запомнить такую длинную строку и обрезает ее. Для вашего удобства разместите JS код за пределами слайда и оттуда его копируйте в кнопку.
Ваша кнопка перестанет работать при повторной публикации курса если вы забудете обновить код на ней в исходнике.
Альтернативное решение
Бывают ситуации, когда нет исходника или возможности его отредактировать. Тогда можно посмотреть в консоли что курс пытается открыть после нажатия на кнопку завершения. Часто курсы пытаются открыть файл goodbye.html. В случае айспринга это путь: папка курса\res\data\goodbye.html. В таких случаях можно найти в скорме или на сервере такой файл закинуть туда скрипт со следующим кодом.
<script type="text/javascript">
<!—Здесь вставляем необходимый нам код: закрытие, переход на следующий модуль, редирект-->
</script>







