This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.
More...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.
ILIAS is licensed with the GPL-3.0, see https://www.gnu.org/licenses/gpl-3.0.en.html You should have received a copy of said license along with the source code, too.
If this is not the case or you just want to try ILIAS, you'll find us at: https://www.ilias.de https://github.com/ILIAS-eLearning Class ilSCORM2004DeleteData
- Author
- Uwe Kohnle kohnl.nosp@m.e@in.nosp@m.terne.nosp@m.tleh.nosp@m.rer-g.nosp@m.mbh..nosp@m.de
Definition at line 28 of file class.ilSCORM2004DeleteData.php.
◆ 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, $query, 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');
193 $query =
'DELETE FROM cmi_objective WHERE ' 194 .
$ilDB->in(
'cmi_objective.cmi_interaction_id', $cmi_inode_values,
false,
'integer');
198 $query =
'DELETE FROM cmi_objective WHERE ' 199 .
$ilDB->in(
'cmi_objective.cmi_node_id', $cmi_node_values,
false,
'integer');
203 $query =
'DELETE FROM cmi_interaction WHERE ' 204 .
$ilDB->in(
'cmi_interaction.cmi_node_id', $cmi_node_values,
false,
'integer');
208 $query =
'DELETE FROM cmi_comment WHERE ' 209 .
$ilDB->in(
'cmi_comment.cmi_node_id', $cmi_node_values,
false,
'integer');
213 $query =
'DELETE FROM cmi_node WHERE ' 214 .
$ilDB->in(
'cmi_node.cmi_node_id', $cmi_node_values,
false,
'integer');
◆ removeCMIDataForPackage()
static ilSCORM2004DeleteData::removeCMIDataForPackage |
( |
int |
$packageId | ) |
|
|
static |
Definition at line 30 of file class.ilSCORM2004DeleteData.php.
References $data, $DIC, $ilDB, $query, 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: