4 require_once
'Modules/TestQuestionPool/interfaces/interface.ilQuestionChangeListener.php';
39 $this->testObjIds[] = $testObjId;
81 if( !count($activeIds) )
93 $inActiveIds = $this->db->in(
'active_fi', $activeIds,
false,
'integer');
95 $this->db->manipulateF(
96 "DELETE FROM tst_solutions WHERE question_fi = %s AND $inActiveIds",
97 array(
'integer'), array($questionId)
100 $this->db->manipulateF(
101 "DELETE FROM tst_qst_solved WHERE question_fi = %s AND $inActiveIds",
102 array(
'integer'), array($questionId)
105 $this->db->manipulateF(
106 "DELETE FROM tst_test_result WHERE question_fi = %s AND $inActiveIds",
107 array(
'integer'), array($questionId)
110 $this->db->manipulate(
"DELETE FROM tst_pass_result WHERE $inActiveIds");
112 $this->db->manipulate(
"DELETE FROM tst_result_cache WHERE $inActiveIds");
117 $inActiveIds = $this->db->in(
'active_fi', $activeIds,
false,
'integer');
120 'tst_seq_qst_tracking',
'tst_seq_qst_answstatus',
'tst_seq_qst_postponed',
'tst_seq_qst_checked' 123 foreach($tables as $table)
125 $this->db->manipulateF(
126 "DELETE FROM $table WHERE question_fi = %s AND $inActiveIds",
127 array(
'integer'), array($questionId)
139 $inTestObjIds = $this->db->in(
'obj_fi', $this->
getTestObjIds(),
false,
'integer');
141 $res = $this->db->query(
" 144 INNER JOIN tst_active 149 $activeIds = array();
151 while(
$row = $this->db->fetchAssoc(
$res) )
153 $activeIds[] =
$row[
'active_id'];
deleteTestsParticipantsQuestionData(assQuestion $question)
getId()
Gets the id of the assQuestion object.
Abstract basic class which is to be extended by the concrete assessment question type classes...
notifyQuestionCreated(assQuestion $question)
deleteTestsParticipantsResultsForQuestion($activeIds, $questionId)
notifyQuestionDeleted(assQuestion $question)
deleteTestsParticipantsTrackingsForQuestion($activeIds, $questionId)
notifyQuestionEdited(assQuestion $question)