Exemplo n.º 1
0
     $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'));