3 declare(strict_types=1);
33 protected \ilDBInterface
$db;
44 $this->db = (
$db) ?: $DIC->database();
45 $this->factory_service = (
$factory_service) ?: $DIC->skills()->internal()->factory();
56 "SELECT * FROM skl_personal_skill " .
60 while ($rec =
$ilDB->fetchAssoc($set)) {
61 $skill_node_id = (
int) $rec[
"skill_node_id"];
62 if ($this->tree_repo->isInAnyTree($skill_node_id)) {
71 $skill_node_id = (
int) $rec[
"skill_node_id"];
73 return $this->factory_service->personal()->selectedUserSkill(
84 "SELECT * FROM skl_personal_skill " .
85 " WHERE user_id = " .
$ilDB->quote($user_id,
"integer") .
86 " AND skill_node_id = " .
$ilDB->quote($skill_node_id,
"integer")
88 if (!
$ilDB->fetchAssoc($set)) {
89 $ilDB->manipulate(
"INSERT INTO skl_personal_skill " .
90 "(user_id, skill_node_id) VALUES (" .
91 $ilDB->quote($user_id,
"integer") .
"," .
92 $ilDB->quote($skill_node_id,
"integer") .
97 public function remove(
int $user_id,
int $skill_node_id):
void 102 "DELETE FROM skl_personal_skill WHERE " .
103 " user_id = " .
$ilDB->quote($user_id,
"integer") .
104 " AND skill_node_id = " .
$ilDB->quote($skill_node_id,
"integer")
113 "DELETE FROM skl_personal_skill WHERE " .
114 " user_id = " .
$ilDB->quote($user_id,
"integer")
123 "DELETE FROM skl_personal_skill WHERE " .
124 " skill_node_id = " .
$ilDB->quote($skill_node_id,
"integer")
135 public function getUsages(array $usages, array $pskill_ids, array $tref_ids): array
140 "SELECT skill_node_id, user_id FROM skl_personal_skill " .
141 " WHERE " .
$ilDB->in(
"skill_node_id", $pskill_ids,
false,
"integer") .
142 " GROUP BY skill_node_id, user_id" 144 while ($rec =
$ilDB->fetchAssoc($set)) {
145 if (isset($tref_ids[(
int) $rec[
"skill_node_id"]])) {
147 array(
"key" => $rec[
"user_id"]);
150 array(
"key" => $rec[
"user_id"]);
static _lookupTitle(int $a_obj_id, int $a_tref_id=0)
Service SkillInternalFactoryService $factory_service
removeAllForUser(int $user_id)
getUsages(array $usages, array $pskill_ids, array $tref_ids)
__construct(\ilSkillTreeRepository $tree_repo, \ilDBInterface $db=null, Service\SkillInternalFactoryService $factory_service=null)
ilSkillTreeRepository $tree_repo
Skill internal factory service.
removeAllForSkill(int $skill_node_id)
add(int $user_id, int $skill_node_id)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
getFromRecord(array $rec)