Спать 


хорошо! Хотите?

// Расширение навигации в уроке $(function() { if ($('.lesson-navigation').length > 0) { if (($('.lesson-navigation td:first-child a').length == 0) || ($('.lesson-navigation td:last-child a').length == 0)) { let exceptions = ['848877679']; //Список тренингов/модулей исключений, где навигацию не включать inLesson__toModule(exceptions); } } }) function inLesson__toModule(exp) { if (!check_exceptions(exp)) { let curModuleId = $('h1 a').attr('href').split('/')[6]; let mainUrl = $('.breadcrumb li:last-child a').attr('href'); let moduleState = 'middle', noModule = false, isFirstModule = false, isLastModule = false, moduleLink = mainUrl, modulePath = '/teach/control/stream/view/id/', moduelName = ['Главная', 'Предыдущий модуль', 'Следующий модуль']; let firstModuleId, lastModuleId, prevModule, nextModule; if (mainUrl !== $('.breadcrumb li:first-child a').attr('href')) { $.ajax({ url: mainUrl, type: 'get', dataType: 'html', async: false, success: function(data) { firstModuleId = $(data).find('.stream-table tbody tr:first-child').attr('data-training-id'); lastModuleId = $(data).find('.stream-table tbody tr:last-child').attr('data-training-id'); if (firstModuleId == lastModuleId) { moduleState = 'only'; } else if (firstModuleId == curModuleId) { if ($('.lesson-navigation td:first-child a').length == 0) { moduleState = 'first'; } } else if (lastModuleId == curModuleId) { if ($('.lesson-navigation td:last-child a').length == 0) { moduleState = 'last'; } } switch (moduleState) { case 'only': if ($('.lesson-navigation td:first-child a').length == 0) { add_button_to_head('first', mainUrl, moduelName[0]); } if ($('.lesson-navigation td:last-child a').length == 0) { add_button_to_head('last', mainUrl, moduelName[0]); } break; case 'middle': if ($('.lesson-navigation td:first-child a').length == 0) { prevModule = find_previous_module($(data), curModuleId); add_button_to_head('first', modulePath+prevModule, moduelName[1]); } if ($('.lesson-navigation td:last-child a').length == 0) { nextModule = find_next_module($(data), curModuleId); add_button_to_head('last', modulePath+nextModule, moduelName[2]); } break; case 'first': add_button_to_head('first', mainUrl, moduelName[0]); if ($('.lesson-navigation td:first-child a').length == 0) { nextModule = find_next_module($(data), curModuleId); add_button_to_head('last', modulePath+nextModule, moduelName[2]); } break; case 'last': add_button_to_head('last', mainUrl, moduelName[0]); if ($('.lesson-navigation td:first-child a').length == 0) { prevModule = find_previous_module($(data), curModuleId); add_button_to_head('first', modulePath+prevModule, moduelName[1]); } break; } } }) } } } function add_button_to_head(btnPosition, btnLink, btnName) { $('.lesson-navigation td:'+btnPosition+'-child').append(''+btnName+''); } function find_next_module(bigData, curModID) { let nextMod; let prevMod; bigData.find('tbody tr').each((i,e)=>{ if (prevMod == curModID) { nextMod = $(e).attr('data-training-id'); return false; } else { prevMod = $(e).attr('data-training-id'); } }) return nextMod; } function find_previous_module(bigData, curModID) { let prevMod; bigData.find('tbody tr').each((i,e)=>{ if ($(e).attr('data-training-id') != curModID) { prevMod = $(e).attr('data-training-id'); } else { return false; } }) return prevMod; } function check_exceptions(except) { let check = []; let showBtns = false; if (window.location.href.split('id')[1]) { let urkId = window.location.href.split('id')[1].slice(1); if (urkId) { if (urkId.length > 0) { if (urkId.indexOf('?')) { check.push(urkId.split('?')[0]); } else { check.push(urkId); } } } } if ($('h1 a').length > 0) check.push($('h1 a').attr('href').split('id')[1].slice(1)); $('.breadcrumbs a, .breadcrumb a').each((i,e) => { if ($(e).attr('href').split('id')[1]) { check.push($(e).attr('href').split('id')[1].slice(1)); } }) for (let i = 0; i < except.length; i++) { for (let z = 0; z < check.length; z++) { if (check[z] == except[i]) { showBtns = true; } } } return showBtns; }