%PDF- %PDF-
Direktori : /home/bitrix/www/bitrix/components/bitrix/learning.student.certificates/ |
Current File : /home/bitrix/www/bitrix/components/bitrix/learning.student.certificates/component.php |
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die(); //Authorized? if (!$USER->IsAuthorized()) $APPLICATION->AuthForm(GetMessage("LEARNING_NO_AUTHORIZE")); //Module if (!CModule::IncludeModule("learning")) { ShowError(GetMessage("LEARNING_MODULE_NOT_FOUND")); return; } //Params $arParams["TESTS_LIST_TEMPLATE"] = ( strlen($arParams["TESTS_LIST_TEMPLATE"]) > 0 ? htmlspecialcharsbx($arParams["TESTS_LIST_TEMPLATE"]) : "course/test_list.php?COURSE_ID=#COURSE_ID#" ); $arParams["COURSE_DETAIL_TEMPLATE"] = ( strlen($arParams["COURSE_DETAIL_TEMPLATE"]) > 0 ? htmlspecialcharsbx($arParams["COURSE_DETAIL_TEMPLATE"]): "course/index.php?COURSE_ID=#COURSE_ID#" ); $arResult = Array( "COURSES" => Array(), "CERTIFICATES" => Array(), ); //Certificates $rsCertificate = CCertification::GetList( Array("ID"=>"DESC"), Array( "STUDENT_ID"=>intval($USER->GetID()), "ACTIVE" => "Y" ) ); while ($arCertificate = $rsCertificate->GetNext()) $arResult["CERTIFICATES"][$arCertificate["COURSE_ID"]] = $arCertificate; //Courses $rsCourse = CCourse::GetList( Array("SORT" => "ASC"), Array( "ACTIVE" => "Y", "ACTIVE_DATE" => "Y", "SITE_ID" => LANG ) ); while ($arCourse = $rsCourse->GetNext()) { //Test list Url $arCourse["TESTS_LIST_URL"] = CComponentEngine::MakePathFromTemplate($arParams["TESTS_LIST_TEMPLATE"],Array("COURSE_ID" => $arCourse["ID"])); //Course Url $arCourse["COURSE_DETAIL_URL"] = CComponentEngine::MakePathFromTemplate($arParams["COURSE_DETAIL_TEMPLATE"], Array("COURSE_ID" => $arCourse["ID"])); $arCourse["COMPLETED"] = (array_key_exists($arCourse["ID"], $arResult["CERTIFICATES"])); if (!$arCourse["COMPLETED"]) { $testsCount = CTest::GetCount(array("COURSE_ID"=>$arCourse["ID"], "ACTIVE" => "Y", 'CHECK_PERMISSIONS' => 'N')); $arCourse["NO_TESTS"] = ($testsCount == 0); } // Resolve links "?COURSE_ID={SELF}". Don't relay on it, this behaviour // can be changed in future without any notifications. if (isset($arCourse['DETAIL_TEXT'])) { $arCourse['DETAIL_TEXT'] = CLearnHelper::PatchLessonContentLinks( $arCourse['DETAIL_TEXT'], $arCourse['ID'] ); } if (isset($arCourse['PREVIEW_TEXT'])) { $arCourse['PREVIEW_TEXT'] = CLearnHelper::PatchLessonContentLinks( $arCourse['PREVIEW_TEXT'], $arCourse['ID'] ); } $arResult["COURSES"][] = $arCourse; } unset($arCertificate); unset($arCourse); //Set Title $arParams["SET_TITLE"] = ($arParams["SET_TITLE"] == "N" ? "N" : "Y" ); if ($arParams["SET_TITLE"] == "Y") $APPLICATION->SetTitle(GetMessage("LEARNING_CERTIFICATES_TITLE")); $this->IncludeComponentTemplate(); ?>