70 return $reportablePasses;
76 SELECT DISTINCT tst_pass_result.pass FROM tst_pass_result 77 INNER JOIN tst_test_result 78 ON tst_pass_result.pass = tst_test_result.pass 79 AND tst_pass_result.active_fi = tst_test_result.active_fi 80 WHERE tst_pass_result.active_fi = %s 83 $res = $this->db->queryF(
87 $existingPasses = array();
89 while(
$row = $this->db->fetchAssoc(
$res) )
91 $existingPasses[] =
$row[
'pass'];
94 return $existingPasses;
101 $reportablePasses = array();
103 foreach($existingPasses as
$pass)
107 $reportablePasses[] =
$pass;
111 return $reportablePasses;
116 $closedPasses = array();
118 foreach($existingPasses as
$pass)
122 $closedPasses[] =
$pass;
126 return $closedPasses;
133 foreach($existingPasses as
$pass)
135 if( $lastPass === null || $pass > $lastPass )
146 if(
$pass < $lastPass)
176 if( !$this->testOBJ->getEnableProcessingTime() )
181 $startingTime = $this->testOBJ->getStartingTimeOfUser($this->
getActiveId(),
$pass);
183 if($startingTime === FALSE)
188 return $this->testOBJ->isMaxProcessingTimeReached($startingTime, $this->
getActiveId());
fetchClosedPasses($existingPasses)
__construct(ilDB $db, ilObjTest $testOBJ)
setLastFinishedPass($lastFinishedPass)
fetchReportablePasses($existingPasses)
isProcessingTimeReached($pass)
isReportablePass($lastPass, $pass)
fetchLastPass($existingPasses)