if (isset($_REQUEST['LESSON_PATH']) && strlen($_REQUEST['LESSON_PATH'])) { $arParams['LESSON_PATH'] = $_REQUEST['LESSON_PATH']; } } $strUrlencodedLessonPath = ''; if (strlen($arParams['LESSON_PATH']) > 0) { $strUrlencodedLessonPath = 'LESSON_PATH=' . $arParams['LESSON_PATH']; } $ratingTransistor = ''; if ($arParams['LESSON_ID'] > 0) { $arRatingData = CRatings::GetRatingVoteResult('LEARN_LESSON', $arParams['LESSON_ID']); $ratingTransistor = serialize($arRatingData); } $delayed = false; $courseLessonId = CCourse::CourseGetLinkedLesson($arParams['COURSE_ID']); if (CLearnParsePermissionsFromFilter::isRegisteredAsAvailableCourse($courseLessonId)) { $arGroupsPeriods = CLearnAccessMacroses::getActiveLearningGroupsPeriod($courseLessonId, $USER->getId()); if ($arGroupsPeriods['IS_EXISTS']) { $arResult['LEARNING_GROUP_ACTIVE_FROM'] = $arGroupsPeriods['ACTIVE_FROM']; $arResult['LEARNING_GROUP_ACTIVE_TO'] = $arGroupsPeriods['ACTIVE_TO']; $activeFromMap = CLearnAccessMacroses::getActiveLearningChaptersPeriod($courseLessonId, $USER->getId()); if ($activeFromMap !== false) { $arResult['LEARNING_GROUP_CHAPTERS_ACTIVE_FROM'] = $activeFromMap; } $oPath = new CLearnPath(); $oPath->ImportUrlencoded($arParams['LESSON_PATH']); $arPath = $oPath->GetPathAsArray(); if (count($arPath) >= 2) { $secondLevelLesson = $arPath[1]; if (isset($arResult['LEARNING_GROUP_CHAPTERS_ACTIVE_FROM'][$secondLevelLesson])) { $activeFrom = $arResult['LEARNING_GROUP_CHAPTERS_ACTIVE_FROM'][$secondLevelLesson];