5include_once(
"./Services/Skill/interfaces/interface.ilSkillUsageInfo.php");
 
   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"],
 
   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)
 
   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")
 
  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)
 
  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") .
 
  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)) {
 
  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)
 
  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");
 
  219        $ilDB->manipulate($t);
 
  233        $t = 
"DELETE FROM skl_assigned_material WHERE " .
 
  234            " user_id = " . 
$ilDB->quote($a_user_id, 
"integer");
 
  235        $ilDB->manipulate($t);
 
  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);
 
  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"]);
 
An exception for terminatinating execution or to throw for unit testing.
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 resetUserSkillLevelStatus($a_user_id, $a_skill_id, $a_tref_id=0, $a_trigger_ref_id=0, $a_self_eval=false)
Reset skill level status.
static getAssignedMaterial($a_user_id, $a_tref_id, $a_level)
Get assigned material (for a skill level and user)
static removeMaterial($a_user_id, $a_tref_id, $a_level_id, $a_wsp_id)
Remove material.
static getSelectedUserSkills($a_user_id)
Get personal selected user skills.
static getSelfEvaluationDate($a_user_id, $a_top_skill, $a_tref_id, $a_basic_skill)
Get self evaluation.
static addPersonalSkill($a_user_id, $a_skill_node_id)
Add personal skill.
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 removeSkill($a_user_id, $a_skill_node_id)
Remove personal skill.
static getSelfEvaluation($a_user_id, $a_top_skill, $a_tref_id, $a_basic_skill)
Get self evaluation.
static removeSkills($a_user_id)
Remove personal skills of user.
static getUsageInfo($a_cskill_ids, &$a_usages)
Get usage info.
static countAssignedMaterial($a_user_id, $a_tref_id, $a_level)
Get assigned material (for a skill level and user)
static saveSelfEvaluation($a_user_id, $a_top_skill, $a_tref_id, $a_basic_skill, $a_level)
Save self evaluation.
static removeMaterials($a_user_id)
Remove materials of user.
static _lookupTemplateId($a_obj_id)
Lookup template ID.
static _lookupTitle($a_obj_id, $a_tref_id=0)
Lookup Title.
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.
Get info on usages of skills.