Class ilSCORM2004DeleteData.
More...
◆ getGlobalToSystemObjectiveIdStringForPackage()
static ilSCORM2004DeleteData::getGlobalToSystemObjectiveIdStringForPackage |
( |
int |
$packageId | ) |
|
|
static |
Definition at line 218 of file class.ilSCORM2004DeleteData.php.
References $data, $DIC, $ilDB, and $res.
222 $ilDB = $DIC->database();
224 $existing_key_template =
"";
225 $global_to_system = 1;
228 'SELECT global_to_system FROM cp_package WHERE obj_id = %s',
233 $global_to_system =
$data[
'global_to_system'];
235 if ($global_to_system == 0) {
241 SELECT targetobjectiveid 242 FROM cp_mapinfo, cp_node 243 WHERE cp_node.slm_id = %s 244 AND cp_node.nodename = %s 245 AND cp_mapinfo.cp_node_id = cp_node.cp_node_id',
246 array(
'integer',
'text'),
250 $existing_key_template .=
"'" .
$data[
'targetobjectiveid'] .
"',";
253 $existing_key_template = substr($existing_key_template, 0, -1);
254 if ($existing_key_template ==
false) {
258 return $existing_key_template;
◆ removeCMIDataForNodes()
static ilSCORM2004DeleteData::removeCMIDataForNodes |
( |
array |
$cmi_node_values | ) |
|
|
static |
Definition at line 171 of file class.ilSCORM2004DeleteData.php.
References $data, $DIC, $ilDB, and $res.
175 $ilDB = $DIC->database();
178 $cmi_inode_values = array();
180 $query =
'SELECT cmi_interaction_id FROM cmi_interaction WHERE ' 181 .
$ilDB->in(
'cmi_interaction.cmi_node_id', $cmi_node_values,
false,
'integer');
184 $cmi_inode_values[] =
$data[
'cmi_interaction_id'];
188 $query =
'DELETE FROM cmi_correct_response WHERE ' 189 .
$ilDB->in(
'cmi_correct_response.cmi_interaction_id', $cmi_inode_values,
false,
'integer');
190 $ilDB->manipulate($query);
193 $query =
'DELETE FROM cmi_objective WHERE ' 194 .
$ilDB->in(
'cmi_objective.cmi_interaction_id', $cmi_inode_values,
false,
'integer');
195 $ilDB->manipulate($query);
198 $query =
'DELETE FROM cmi_objective WHERE ' 199 .
$ilDB->in(
'cmi_objective.cmi_node_id', $cmi_node_values,
false,
'integer');
200 $ilDB->manipulate($query);
203 $query =
'DELETE FROM cmi_interaction WHERE ' 204 .
$ilDB->in(
'cmi_interaction.cmi_node_id', $cmi_node_values,
false,
'integer');
205 $ilDB->manipulate($query);
208 $query =
'DELETE FROM cmi_comment WHERE ' 209 .
$ilDB->in(
'cmi_comment.cmi_node_id', $cmi_node_values,
false,
'integer');
210 $ilDB->manipulate($query);
213 $query =
'DELETE FROM cmi_node WHERE ' 214 .
$ilDB->in(
'cmi_node.cmi_node_id', $cmi_node_values,
false,
'integer');
215 $ilDB->manipulate($query);
◆ removeCMIDataForPackage()
static ilSCORM2004DeleteData::removeCMIDataForPackage |
( |
int |
$packageId | ) |
|
|
static |
Definition at line 30 of file class.ilSCORM2004DeleteData.php.
References $data, $DIC, $ilDB, and $res.
Referenced by ilSCORM13Package\removeCMIData().
34 $ilDB = $DIC->database();
38 SELECT cmi_node.cmi_node_id 39 FROM cmi_node, cp_node 40 WHERE cp_node.slm_id = %s AND cmi_node.cp_node_id = cp_node.cp_node_id',
44 $cmi_node_values = [];
46 $cmi_node_values[] =
$data[
'cmi_node_id'];
48 self::removeCMIDataForNodes($cmi_node_values);
52 $query =
'DELETE FROM cmi_custom WHERE obj_id = %s';
56 $query =
'DELETE FROM sahs_user WHERE obj_id = %s';
60 $query =
'DELETE FROM cmi_gobjective WHERE scope_id = %s';
63 $s_globalObjectiveId = self::getGlobalToSystemObjectiveIdStringForPackage(
$packageId);
64 if ($s_globalObjectiveId !=
"") {
66 'DELETE FROM cmi_gobjective WHERE scope_id = %s AND objective_id in (' . $s_globalObjectiveId .
')',
◆ removeCMIDataForUser()
static ilSCORM2004DeleteData::removeCMIDataForUser |
( |
int |
$user_id | ) |
|
|
static |
Definition at line 73 of file class.ilSCORM2004DeleteData.php.
References $data, $DIC, $ilDB, and $res.
Referenced by ilSCORM13Package\_removeTrackingDataForUser().
77 $ilDB = $DIC->database();
82 SELECT cmi_node.cmi_node_id 83 FROM cmi_node, cp_node 84 WHERE cmi_node.user_id = %s AND cmi_node.cp_node_id = cp_node.cp_node_id',
89 $cmi_node_values = [];
91 $cmi_node_values[] =
$data[
'cmi_node_id'];
93 self::removeCMIDataForNodes($cmi_node_values);
98 'DELETE FROM cmi_custom WHERE user_id = %s',
105 'DELETE FROM sahs_user WHERE user_id = %s',
112 'DELETE FROM cmi_gobjective WHERE user_id = %s',
◆ removeCMIDataForUserAndPackage()
static ilSCORM2004DeleteData::removeCMIDataForUserAndPackage |
( |
int |
$user_id, |
|
|
int |
$packageId |
|
) |
| |
|
static |
Definition at line 118 of file class.ilSCORM2004DeleteData.php.
References $data, $DIC, $ilDB, and $res.
Referenced by ilObjSCORM2004LearningModule\deleteTrackingDataOfUsers().
122 $ilDB = $DIC->database();
127 SELECT cmi_node.cmi_node_id 128 FROM cmi_node, cp_node 129 WHERE cmi_node.user_id = %s AND cmi_node.cp_node_id = cp_node.cp_node_id AND cp_node.slm_id = %s',
130 array(
'integer',
'integer'),
133 $cmi_node_values = [];
135 $cmi_node_values[] =
$data[
'cmi_node_id'];
137 self::removeCMIDataForNodes($cmi_node_values);
142 'DELETE FROM cmi_custom WHERE user_id = %s AND obj_id = %s',
143 array(
'integer',
'integer'),
149 'DELETE FROM sahs_user WHERE user_id = %s AND obj_id = %s',
150 array(
'integer',
'integer'),
156 'DELETE FROM cmi_gobjective WHERE user_id = %s AND scope_id = %s',
157 array(
'integer',
'integer'),
161 $s_globalObjectiveId = self::getGlobalToSystemObjectiveIdStringForPackage(
$packageId);
162 if ($s_globalObjectiveId !=
"") {
164 'DELETE FROM cmi_gobjective WHERE user_id = %s AND scope_id = %s AND objective_id in (' . $s_globalObjectiveId .
')',
165 array(
'integer',
'integer'),
The documentation for this class was generated from the following file: