$rsAtt = CTestAttempt::GetByID((int) $sessAttemptID); if (($arAtt = $rsAtt->GetNext()) && $arTest["APPROVED"] == "Y") { $arAtt["CORRECT_COUNT"] = CTestResult::GetCorrectCount($arAtt["ID"]); $sessAttempt = $arAtt; } $sessAttemptID = null; $sessAttemptFinished = true; $sessAttemptError = GetMessage("LEARNING_TIME_LIMIT"); LocalRedirect($arResult["REDIRECT_PAGE"]); } elseif ($arTest["TIME_LIMIT"] > 0) { $arResult["SECONDS_TO_END"] = $arTest["TIME_LIMIT"] * 60 - (time() - MakeTimeStamp($arAttempt["DATE_START"])); $arResult["SECONDS_TO_END_STRING"] = _TimeToStringFormat($arResult["SECONDS_TO_END"]); } //If there are no questions, finish the attempt if ($arTest["PASSAGE_TYPE"] < 2) { $arProgress = CTestResult::GetProgress($sessAttemptID); if ($arProgress["TODO"] == 0) { $rsTestAttempt = new CTestAttempt(); $rsTestAttempt->AttemptFinished($sessAttemptID); $rsAtt = CTestAttempt::GetByID((int) $sessAttemptID); if (($arAtt = $rsAtt->GetNext()) && $arTest["APPROVED"] == "Y") { $arAtt["CORRECT_COUNT"] = CTestResult::GetCorrectCount($arAtt["ID"]); $sessAttempt = $arAtt; } $sessAttemptID = null; $sessAttemptFinished = true; LocalRedirect($arResult["REDIRECT_PAGE"]); } } //Get questions $rsTestResult = CTestResult::GetList(array("ID" => "ASC"), array("ATTEMPT_ID" => $sessAttemptID, 'CHECK_PERMISSIONS' => 'N'));