52 $this->db = $DIC->database();
56 if ($a_obj_id > 0 && $a_user_id > 0) {
68 $this->obj_id = $a_val;
88 $this->user_id = $a_val;
109 "SELECT * FROM cont_member_skills " .
110 " WHERE obj_id = " .
$db->quote($this->getObjId(),
"integer") .
111 " AND user_id = " .
$db->quote($this->getUserId(),
"integer")
113 $this->skill_levels = array();
114 while ($rec = $this->db->fetchAssoc($set)) {
115 $this->skill_levels[$rec[
"skill_id"] .
":" . $rec[
"tref_id"]] = $rec[
"level_id"];
116 $this->published = $rec[
"published"];
138 $s = explode(
":", $k);
139 return array(
"level_id" =>
$a,
"skill_id" => $s[0],
"tref_id" => $s[1]);
143 return $vtree->getOrderedNodeset(
$skill_levels,
"skill_id",
"tref_id");
167 foreach ($a_level_data as $k => $v) {
168 $sk = explode(
":", $k);
169 $db->manipulate(
"INSERT INTO cont_member_skills " .
170 "(obj_id, user_id, skill_id, tref_id, level_id, published) VALUES (" .
171 $db->quote($this->getObjId(),
"integer") .
"," .
172 $db->quote($this->getUserId(),
"integer") .
"," .
173 $db->quote($sk[0],
"integer") .
"," .
174 $db->quote($sk[1],
"integer") .
"," .
175 $db->quote($v,
"integer") .
"," .
176 $db->quote(0,
"integer") .
180 $this->skill_levels = $a_level_data;
188 public function delete()
192 $db->manipulate(
"DELETE FROM cont_member_skills WHERE " .
193 " obj_id = " .
$db->quote($this->getObjId(),
"integer") .
194 " AND user_id = " .
$db->quote($this->getUserId(),
"integer"));
211 foreach ($this->skill_levels as $sk => $l) {
213 $sk = explode(
":", $sk);
232 $db->manipulate(
"UPDATE cont_member_skills SET " .
233 " published = " .
$db->quote(1,
"integer") .
234 " WHERE obj_id = " .
$db->quote($this->
getObjId(),
"integer") .
235 " AND user_id = " .
$db->quote($this->
getUserId(),
"integer"));
__construct($a_obj_id, $a_user_id)
Constrictor.
getPublished()
Get published.
getSkillLevels()
Get Skill levels.
static removeAllUserSkillLevelStatusOfObject(int $a_user_id, int $a_trigger_obj_id, bool $a_self_eval=false, string $a_unique_identifier="")
saveLevelForSkills($a_level_data)
Save levels for skills.
static writeUserSkillLevelStatus(int $a_level_id, int $a_user_id, int $a_trigger_ref_id, int $a_tref_id=0, int $a_status=ilBasicSkill::ACHIEVED, bool $a_force=false, bool $a_self_eval=false, string $a_unique_identifier="", float $a_next_level_fulfilment=0.0)
setUserId($a_val)
Set user id.
publish($a_ref_id)
Publish.
static addPersonalSkill($a_user_id, $a_skill_node_id)
Add personal skill.
setObjId($a_val)
Set object id.
$a
thx to https://mlocati.github.io/php-cs-fixer-configurator for the examples
removeAllSkillLevels()
Remove all skill levels.
getOrderedSkillLevels()
Get ordered skill levels.