init: function() {
// 1. Проверяем, что пользователь зашел именно на страницу логина
if (window.location.pathname.toLowerCase().indexOf('/login/login.html') !== -1) {
// Вспомогательная функция для поиска значения куки по имени
var getCookie = function(name) {
var matches = document.cookie.match(new RegExp(
"(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
));
return matches ? decodeURIComponent(matches[1]) : undefined;
};
// 2. Ищем куку защиты от CSRF, которую Creatio выдает только живой сессии
var bpmCsrf = getCookie("BPMCSRF");
if (bpmCsrf && bpmCsrf.trim() !== "") {
// Кука найдена -> сессия существует.
// Вычисляем корень сайта и мгновенно уводим пользователя в Shell
var basePath = window.location.pathname.replace(/\/Login\/Login\.html/i, '');
window.location.href = window.location.origin + basePath + '/0/Shell/';
return; // Прерываем выполнение init(), предотвращая рендер формы логина
}
}
// 3. Если куки нет, управление передается стандартному коду Creatio
this.callParent(arguments);
}