3 declare(strict_types=1);
44 "DELETE FROM skl_level WHERE " 45 .
" skill_id = " .
$ilDB->quote($skill_id,
"integer")
49 public function addLevel(
int $skill_id,
string $a_title,
string $a_description,
string $a_import_id =
""): void
54 $nid =
$ilDB->nextId(
"skl_level");
55 $ilDB->insert(
"skl_level", array(
56 "id" => array(
"integer", $nid),
57 "skill_id" => array(
"integer", $skill_id),
58 "nr" => array(
"integer", $nr + 1),
59 "title" => array(
"text", $a_title),
60 "description" => array(
"clob", $a_description),
61 "import_id" => array(
"text", $a_import_id),
62 "creation_date" => array(
"timestamp",
ilUtil::now())
71 "SELECT MAX(nr) mnr FROM skl_level WHERE " .
72 " skill_id = " .
$ilDB->quote($skill_id,
"integer")
74 $rec =
$ilDB->fetchAssoc($set);
75 return (
int) ($rec[
"mnr"] ?? 0);
87 $and =
" AND id = " .
$ilDB->quote($a_id,
"integer");
91 "SELECT * FROM skl_level WHERE " .
92 " skill_id = " .
$ilDB->quote($skill_id,
"integer") .
97 while ($rec =
$ilDB->fetchAssoc($set)) {
111 "SELECT $a_prop FROM skl_level WHERE " .
112 " id = " .
$ilDB->quote($a_id,
"integer")
114 $rec =
$ilDB->fetchAssoc($set);
116 return isset($rec[$a_prop]) ? (string) $rec[$a_prop] : null;
139 protected function writeLevelProperty(
int $a_id,
string $a_prop, ?
string $a_value,
string $a_type): void
143 $ilDB->update(
"skl_level", array(
144 $a_prop => array($a_type, $a_value),
146 "id" => array(
"integer", $a_id),
165 foreach ($order as
$id => $o) {
167 "UPDATE skl_level SET " .
168 " nr = " .
$ilDB->quote($cnt,
"integer") .
169 " WHERE id = " .
$ilDB->quote(
$id,
"integer")
180 "DELETE FROM skl_level WHERE " 181 .
" id = " .
$ilDB->quote($a_id,
"integer")
190 "SELECT id, nr FROM skl_level WHERE " .
191 " skill_id = " .
$ilDB->quote($skill_id,
"integer") .
195 while ($rec =
$ilDB->fetchAssoc($set)) {
197 "UPDATE skl_level SET " .
198 " nr = " .
$ilDB->quote($cnt,
"integer") .
199 " WHERE id = " .
$ilDB->quote($rec[
"id"],
"integer")
210 "SELECT * FROM skl_level WHERE " .
211 " id = " .
$ilDB->quote($a_level_id,
"integer")
214 if ($rec =
$ilDB->fetchAssoc($set)) {
215 if ($this->tree_repo->isInAnyTree((
int) $rec[
"skill_id"])) {
lookupLevelSkillId(int $a_id)
writeLevelDescription(int $a_id, string $a_description)
writeLevelProperty(int $a_id, string $a_prop, ?string $a_value, string $a_type)
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...
static now()
Return current timestamp in Y-m-d H:i:s format.
writeLevelTitle(int $a_id, string $a_title)
ilSkillTreeRepository $tree_repo
__construct(ilSkillTreeRepository $tree_repo, ilDBInterface $db=null)
addLevel(int $skill_id, string $a_title, string $a_description, string $a_import_id="")
deleteLevelsOfSkill(int $skill_id)
updateLevelOrder(array $order)
lookupLevelTitle(int $a_id)
lookupLevelProperty(int $a_id, string $a_prop)
fixLevelNumbering(int $skill_id)
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
lookupLevelNumber(int $a_id)
getSkillForLevelId(int $a_level_id)
getMaxLevelNr(int $skill_id)
lookupLevelDescription(int $a_id)
getLevelData(int $skill_id, int $a_id=0)
Returns multiple rows when $a_id is 0 else one or [].