Страницы ошибок
Документация по mustache, который используется для подстановки данных из модельки в html-шаблон.
Чтобы сбилдить локально:
npm i
npm run build
Пример модельки:
{
"project_name":"Контур.Пример",
"logo_url": "https://s.kontur.ru/common-v2/logos/logo-kontur-32.svg",
"product_color":"#f03b36",
"chat_topic":"ПРИМЕР",
"support_center_integration_id": "default",
"support_center_segment": null,
"main_link": {
"show": false,
"href": "/",
"title": "Главная"
},
"login_link":{
"href":"/login",
"title":"Вход в пример"
},
"links": [
{"href":"/services", "title" : "Услуги"},
{"href":"/procedure ", "title" : "Как получить"},
{"href":"/support", "title" : "Техподдержка"}
],
"GTM" : "GTM-EXAMPLE",
"errors_folder" : "./front/build/error-pages",
"products_links" : {
"show" : true,
"links" :[
{
"url": "https://alko.kontur.ru/Login/Enter/Run",
"text": "Алкодекларация",
"hidden": "true"
}, {
"url": "https://sverka.kontur.ru/",
"text": "Алкосверка",
"hidden": "true"
}, {
"url": "https://evrika.kontur.ru/Login/Password",
"text": "Бухгалтерия",
"hidden": "true"
}, {
"url": "https://diadoc.kontur.ru/",
"text": "Диадок",
"hidden": "true"
}
]}
}
Как оно работает?
Работает оно на webpack
, используя mustache-loader
. Для поддержки вложенности шаблонов идет двойная обработка:
mustache-loader + apply-loader + mustache-loader
отсюда ограничение => в partial нельзя использовать другой partial.
Есть возможность переопределения как настроек макета (страницы), так и настроек сайта. Для этого нужно создать папку ErrorPagesCustomSettings, положить ее в корень сайта. В папке можно создавать json-ы с названием Error{КОД_ОШИБКИ}-model.json. Пример контента, который перебивает название и адрес главной страницы и текста на ней:
{
"layout_settings": {
"text": "Доступ к данной странице имеют только авторизованные сотрудники Контура. Если что-то пошло не так",
"show_products": false,
"reload_page": false,
"show_popular_links": false,
"show_main_entry_links": true
},
"page_settings": {
"main_link": {
"href": "https://auth.kontur.ru",
"title": "Войти как сотрудник",
"long_title": "Войти как сотрудник"
}
}
}
Для ссылки на вход можно указать параметр back_url_param - если он включен, в ссылку на вход подставится параметр с названием из back_url_param, со значением - текущей страницей