'tab-mappings-btn': ['tab-mappings', '{$mappingIndexUrl}']
};
- // Загрузка активной вкладки сразу
- loadTab('tab-suppliers', '{$supplierIndexUrl}');
+ // Восстановление вкладки из URL-хэша или загрузка первой
+ var hash = window.location.hash.replace('#', '');
+ var initialBtnId = (hash && tabMap[hash]) ? hash : 'tab-suppliers-btn';
+ if (initialBtnId !== 'tab-suppliers-btn') {
+ var tabEl = document.getElementById(initialBtnId);
+ if (tabEl) {
+ bootstrap.Tab.getOrCreateInstance(tabEl).show();
+ }
+ }
+ var initialCfg = tabMap[initialBtnId];
+ if (initialCfg) {
+ loadTab(initialCfg[0], initialCfg[1]);
+ }
- // Клик по кнопке вкладки — прямой обработчик, не зависит от bootstrap events
+ // Клик по кнопке вкладки — сохраняем хэш и грузим контент
$('#buyerRefTabs').on('click', '.nav-link', function() {
var cfg = tabMap[this.id];
if (cfg) {
+ history.replaceState(null, '', '#' + this.id);
loadTab(cfg[0], cfg[1]);
}
});