19 SELECT cmi_node.cmi_node_id
20 FROM cmi_node, cp_node
21 WHERE cp_node.slm_id = %s AND cmi_node.cp_node_id = cp_node.cp_node_id',
27 $cmi_node_values[] =
$data[
'cmi_node_id'];
33 $query =
'DELETE FROM cmi_custom WHERE obj_id = %s';
37 $query =
'DELETE FROM sahs_user WHERE obj_id = %s';
41 $query =
'DELETE FROM cmi_gobjective WHERE scope_id = %s';
45 if ($s_globalObjectiveId !=
"") {
47 'DELETE FROM cmi_gobjective WHERE scope_id = %s AND objective_id in ('.$s_globalObjectiveId.
')',
60 SELECT cmi_node.cmi_node_id
61 FROM cmi_node, cp_node
62 WHERE cmi_node.user_id = %s AND cmi_node.cp_node_id = cp_node.cp_node_id',
69 $cmi_node_values[] =
$data[
'cmi_node_id'];
76 'DELETE FROM cmi_custom WHERE user_id = %s',
83 'DELETE FROM sahs_user WHERE user_id = %s',
90 'DELETE FROM cmi_gobjective WHERE user_id = %s',
103 SELECT cmi_node.cmi_node_id
104 FROM cmi_node, cp_node
105 WHERE cmi_node.user_id = %s AND cmi_node.cp_node_id = cp_node.cp_node_id AND cp_node.slm_id = %s',
106 array(
'integer',
'integer'),
111 $cmi_node_values[] =
$data[
'cmi_node_id'];
118 'DELETE FROM cmi_custom WHERE user_id = %s AND obj_id = %s',
119 array(
'integer',
'integer'),
125 'DELETE FROM sahs_user WHERE user_id = %s AND obj_id = %s',
126 array(
'integer',
'integer'),
132 'DELETE FROM cmi_gobjective WHERE user_id = %s AND scope_id = %s',
133 array(
'integer',
'integer'),
138 if ($s_globalObjectiveId !=
"") {
140 'DELETE FROM cmi_gobjective WHERE user_id = %s AND scope_id = %s AND objective_id in ('.$s_globalObjectiveId.
')',
141 array(
'integer',
'integer'),
152 $cmi_inode_values = array();
154 $query =
'SELECT cmi_interaction_id FROM cmi_interaction WHERE '
155 .
$ilDB->in(
'cmi_interaction.cmi_node_id', $cmi_node_values,
false,
'integer');
159 $cmi_inode_values[] =
$data[
'cmi_interaction_id'];
163 $query =
'DELETE FROM cmi_correct_response WHERE '
164 .
$ilDB->in(
'cmi_correct_response.cmi_interaction_id', $cmi_inode_values,
false,
'integer');
168 $query =
'DELETE FROM cmi_objective WHERE '
169 .
$ilDB->in(
'cmi_objective.cmi_interaction_id', $cmi_inode_values,
false,
'integer');
173 $query =
'DELETE FROM cmi_objective WHERE '
174 .
$ilDB->in(
'cmi_objective.cmi_node_id', $cmi_node_values,
false,
'integer');
178 $query =
'DELETE FROM cmi_interaction WHERE '
179 .
$ilDB->in(
'cmi_interaction.cmi_node_id', $cmi_node_values,
false,
'integer');
183 $query =
'DELETE FROM cmi_comment WHERE '
184 .
$ilDB->in(
'cmi_comment.cmi_node_id', $cmi_node_values,
false,
'integer');
188 $query =
'DELETE FROM cmi_node WHERE '
189 .
$ilDB->in(
'cmi_node.cmi_node_id', $cmi_node_values,
false,
'integer');
197 $existing_key_template =
"";
198 $global_to_system = 1;
200 $res =
$ilDB->queryF(
'SELECT global_to_system FROM cp_package WHERE obj_id = %s',
206 $global_to_system =
$data[
'global_to_system'];
208 if ($global_to_system == 0)
return "";
211 SELECT targetobjectiveid
212 FROM cp_mapinfo, cp_node
213 WHERE cp_node.slm_id = %s
214 AND cp_node.nodename = %s
215 AND cp_mapinfo.cp_node_id = cp_node.cp_node_id',
216 array(
'integer',
'text'),
221 $existing_key_template .=
"'".$data[
'targetobjectiveid'].
"',";
224 $existing_key_template = substr($existing_key_template, 0, strlen($existing_key_template) - 1);
226 return $existing_key_template;
Class ilSCORM2004DeleteData.
removeCMIDataForNodes($cmi_node_values)
removeCMIDataForUserAndPackage($user_id, $packageId)
removeCMIDataForPackage($packageId)
getGlobalToSystemObjectiveIdStringForPackage($packageId)
removeCMIDataForUser($user_id)