5 include_once(
"./Services/Skill/interfaces/interface.ilSkillUsageInfo.php");
26 $ilDB = $DIC->database();
28 include_once
"Services/Skill/classes/class.ilSkillTreeNode.php";
30 include_once(
"./Services/Skill/classes/class.ilSkillTree.php");
34 "SELECT * FROM skl_personal_skill " .
35 " WHERE user_id = " .
$ilDB->quote($a_user_id,
"integer")
38 while ($rec =
$ilDB->fetchAssoc($set)) {
39 if ($stree->isInTree($rec[
"skill_node_id"])) {
40 $pskills[$rec[
"skill_node_id"]] = array(
"skill_node_id" => $rec[
"skill_node_id"],
57 $ilDB = $DIC->database();
60 "SELECT * FROM skl_personal_skill " .
61 " WHERE user_id = " .
$ilDB->quote($a_user_id,
"integer") .
62 " AND skill_node_id = " .
$ilDB->quote($a_skill_node_id,
"integer")
64 if (!
$ilDB->fetchAssoc($set)) {
65 $ilDB->manipulate(
"INSERT INTO skl_personal_skill " .
66 "(user_id, skill_node_id) VALUES (" .
67 $ilDB->quote($a_user_id,
"integer") .
"," .
68 $ilDB->quote($a_skill_node_id,
"integer") .
79 public static function removeSkill($a_user_id, $a_skill_node_id)
83 $ilDB = $DIC->database();
86 "DELETE FROM skl_personal_skill WHERE " .
87 " user_id = " .
$ilDB->quote($a_user_id,
"integer") .
88 " AND skill_node_id = " .
$ilDB->quote($a_skill_node_id,
"integer")
101 $ilDB = $DIC->database();
104 "DELETE FROM skl_personal_skill WHERE " .
105 " user_id = " .
$ilDB->quote($a_user_id,
"integer")
124 public static function assignMaterial($a_user_id, $a_top_skill, $a_tref_id, $a_basic_skill, $a_level, $a_wsp_id)
128 $ilDB = $DIC->database();
131 "SELECT * FROM skl_assigned_material " .
132 " WHERE user_id = " .
$ilDB->quote($a_user_id,
"integer") .
133 " AND top_skill_id = " .
$ilDB->quote($a_top_skill,
"integer") .
134 " AND tref_id = " .
$ilDB->quote((
int) $a_tref_id,
"integer") .
135 " AND skill_id = " .
$ilDB->quote($a_basic_skill,
"integer") .
136 " AND level_id = " .
$ilDB->quote($a_level,
"integer") .
137 " AND wsp_id = " .
$ilDB->quote($a_wsp_id,
"integer")
139 if (!
$ilDB->fetchAssoc($set)) {
140 $ilDB->manipulate(
"INSERT INTO skl_assigned_material " .
141 "(user_id, top_skill_id, tref_id, skill_id, level_id, wsp_id) VALUES (" .
142 $ilDB->quote($a_user_id,
"integer") .
"," .
143 $ilDB->quote($a_top_skill,
"integer") .
"," .
144 $ilDB->quote((
int) $a_tref_id,
"integer") .
"," .
145 $ilDB->quote($a_basic_skill,
"integer") .
"," .
146 $ilDB->quote($a_level,
"integer") .
"," .
147 $ilDB->quote($a_wsp_id,
"integer") .
163 $ilDB = $DIC->database();
166 "SELECT * FROM skl_assigned_material " .
167 " WHERE level_id = " .
$ilDB->quote($a_level,
"integer") .
168 " AND tref_id = " .
$ilDB->quote((
int) $a_tref_id,
"integer") .
169 " AND user_id = " .
$ilDB->quote($a_user_id,
"integer")
172 while ($rec =
$ilDB->fetchAssoc($set)) {
189 $ilDB = $DIC->database();
192 "SELECT count(*) as cnt FROM skl_assigned_material " .
193 " WHERE level_id = " .
$ilDB->quote($a_level,
"integer") .
194 " AND tref_id = " .
$ilDB->quote((
int) $a_tref_id,
"integer") .
195 " AND user_id = " .
$ilDB->quote($a_user_id,
"integer")
197 $rec =
$ilDB->fetchAssoc($set);
207 public static function removeMaterial($a_user_id, $a_tref_id, $a_level_id, $a_wsp_id)
211 $ilDB = $DIC->database();
213 $t =
"DELETE FROM skl_assigned_material WHERE " .
214 " user_id = " .
$ilDB->quote($a_user_id,
"integer") .
215 " AND tref_id = " .
$ilDB->quote((
int) $a_tref_id,
"integer") .
216 " AND level_id = " .
$ilDB->quote($a_level_id,
"integer") .
217 " AND wsp_id = " .
$ilDB->quote($a_wsp_id,
"integer");
231 $ilDB = $DIC->database();
233 $t =
"DELETE FROM skl_assigned_material WHERE " .
234 " user_id = " .
$ilDB->quote($a_user_id,
"integer");
251 public static function saveSelfEvaluation($a_user_id, $a_top_skill, $a_tref_id, $a_basic_skill, $a_level)
253 include_once(
"./Services/Skill/classes/class.ilBasicSkill.php");
280 include_once(
"./Services/Skill/classes/class.ilBasicSkill.php");
282 return $bs->getLastLevelPerObject($a_tref_id, 0, $a_user_id, 1);
296 include_once(
"./Services/Skill/classes/class.ilBasicSkill.php");
298 return $bs->getLastUpdatePerObject($a_tref_id, 0, $a_user_id, 1);
311 $ilDB = $DIC->database();
314 include_once(
"./Services/Skill/classes/class.ilSkillUsage.php");
319 "skl_assigned_material",
328 "skl_self_eval_level",
333 $pskill_ids = array();
335 foreach ($a_cskill_ids as $cs) {
336 if ($cs[
"tref_id"] > 0) {
337 include_once(
"./Services/Skill/classes/class.ilSkillTemplateReference.php");
339 $pskill_ids[$cs[
"tref_id"]] = $cs[
"tref_id"];
340 $tref_ids[(int) $cs[
"tref_id"]] = $cs[
"skill_id"];
343 $pskill_ids[$cs[
"skill_id"]] = $cs[
"skill_id"];
347 "SELECT skill_node_id, user_id FROM skl_personal_skill " .
348 " WHERE " .
$ilDB->in(
"skill_node_id", $pskill_ids,
false,
"integer") .
349 " GROUP BY skill_node_id, user_id" 351 while ($rec =
$ilDB->fetchAssoc($set)) {
352 if (isset($tref_ids[(
int) $rec[
"skill_node_id"]])) {
354 array(
"key" => $rec[
"user_id"]);
357 array(
"key" => $rec[
"user_id"]);
Get info on usages of skills.
static getSelectedUserSkills($a_user_id)
Get personal selected user skills.
static saveSelfEvaluation($a_user_id, $a_top_skill, $a_tref_id, $a_basic_skill, $a_level)
Save self evaluation.
static getUsageInfoGeneric( $a_cskill_ids, &$a_usages, $a_usage_type, $a_table, $a_key_field, $a_skill_field="skill_id", $a_tref_field="tref_id")
Get standard usage query.
static removeMaterials($a_user_id)
Remove materials of user.
static removeSkill($a_user_id, $a_skill_node_id)
Remove personal skill.
static getUsageInfo($a_cskill_ids, &$a_usages)
Get usage info.
static addPersonalSkill($a_user_id, $a_skill_node_id)
Add personal skill.
static _lookupTemplateId($a_obj_id)
Lookup template ID.
static _lookupTitle($a_obj_id, $a_tref_id=0)
Lookup Title.
static removeSkills($a_user_id)
Remove personal skills of user.
static getSelfEvaluation($a_user_id, $a_top_skill, $a_tref_id, $a_basic_skill)
Get self evaluation.
static getAssignedMaterial($a_user_id, $a_tref_id, $a_level)
Get assigned material (for a skill level and user)
static countAssignedMaterial($a_user_id, $a_tref_id, $a_level)
Get assigned material (for a skill level and user)
static writeUserSkillLevelStatus( $a_level_id, $a_user_id, $a_trigger_ref_id, $a_tref_id=0, $a_status=ilBasicSkill::ACHIEVED, $a_force=false, $a_self_eval=false, $a_unique_identifier="")
Write skill level status.
static getSelfEvaluationDate($a_user_id, $a_top_skill, $a_tref_id, $a_basic_skill)
Get self evaluation.
static removeMaterial($a_user_id, $a_tref_id, $a_level_id, $a_wsp_id)
Remove material.
static assignMaterial($a_user_id, $a_top_skill, $a_tref_id, $a_basic_skill, $a_level, $a_wsp_id)
Assign material to skill level.
static resetUserSkillLevelStatus($a_user_id, $a_skill_id, $a_tref_id=0, $a_trigger_ref_id=0, $a_self_eval=false)
Reset skill level status.