3 declare(strict_types=1);
    31     protected \ilDBInterface 
$db;
    40         $this->db = (
$db) ?: $DIC->database();
    41         $this->factory_service = (
$factory_service) ?: $DIC->skills()->internal()->factory();
    65             "SELECT * FROM skl_assigned_material " .
    66             " WHERE user_id = " . 
$ilDB->quote($user_id, 
"integer") .
    67             " AND top_skill_id = " . 
$ilDB->quote($top_skill_id, 
"integer") .
    68             " AND tref_id = " . 
$ilDB->quote($tref_id, 
"integer") .
    69             " AND skill_id = " . 
$ilDB->quote($basic_skill_id, 
"integer") .
    70             " AND level_id = " . 
$ilDB->quote($level_id, 
"integer") .
    71             " AND wsp_id = " . 
$ilDB->quote($wsp_id, 
"integer")
    73         if (!
$ilDB->fetchAssoc($set)) {
    74             $ilDB->manipulate(
"INSERT INTO skl_assigned_material " .
    75                 "(user_id, top_skill_id, tref_id, skill_id, level_id, wsp_id) VALUES (" .
    76                 $ilDB->quote($user_id, 
"integer") . 
"," .
    77                 $ilDB->quote($top_skill_id, 
"integer") . 
"," .
    78                 $ilDB->quote($tref_id, 
"integer") . 
"," .
    79                 $ilDB->quote($basic_skill_id, 
"integer") . 
"," .
    80                 $ilDB->quote($level_id, 
"integer") . 
"," .
    81                 $ilDB->quote($wsp_id, 
"integer") .
    90     public function get(
int $user_id, 
int $tref_id, 
int $level_id): array
    95             "SELECT * FROM skl_assigned_material " .
    96             " WHERE level_id = " . 
$ilDB->quote($level_id, 
"integer") .
    97             " AND tref_id = " . 
$ilDB->quote($tref_id, 
"integer") .
    98             " AND user_id = " . 
$ilDB->quote($user_id, 
"integer")
   101         while ($rec = 
$ilDB->fetchAssoc($set)) {
   111     public function getAll(
int $user_id, 
int $skill_id, 
int $tref_id): array
   116             "SELECT * FROM skl_assigned_material " .
   117             " WHERE skill_id = " . 
$ilDB->quote($skill_id, 
"integer") .
   118             " AND tref_id = " . 
$ilDB->quote($tref_id, 
"integer") .
   119             " AND user_id = " . 
$ilDB->quote($user_id, 
"integer")
   122         while ($rec = 
$ilDB->fetchAssoc($set)) {
   130         $rec[
'user_id'] = (
int) $rec[
'user_id'];
   131         $rec[
'top_skill_id'] = (
int) $rec[
'top_skill_id'];
   132         $rec[
'skill_id'] = (
int) $rec[
'skill_id'];
   133         $rec[
'level_id'] = (
int) $rec[
'level_id'];
   134         $rec[
'wsp_id'] = (
int) $rec[
'wsp_id'];
   135         $rec[
'tref_id'] = (
int) $rec[
'tref_id'];
   137         return $this->factory_service->personal()->assignedMaterial(
   139             $rec[
'top_skill_id'],
   150     public function count(
int $user_id, 
int $tref_id, 
int $level_id): 
int   155             "SELECT count(*) as cnt FROM skl_assigned_material " .
   156             " WHERE level_id = " . 
$ilDB->quote($level_id, 
"integer") .
   157             " AND tref_id = " . 
$ilDB->quote($tref_id, 
"integer") .
   158             " AND user_id = " . 
$ilDB->quote($user_id, 
"integer")
   160         $rec = 
$ilDB->fetchAssoc($set);
   161         return (
int) $rec[
"cnt"];
   164     public function remove(
int $user_id, 
int $tref_id, 
int $level_id, 
int $wsp_id): 
void   168         $t = 
"DELETE FROM skl_assigned_material WHERE " .
   169             " user_id = " . 
$ilDB->quote($user_id, 
"integer") .
   170             " AND tref_id = " . 
$ilDB->quote($tref_id, 
"integer") .
   171             " AND level_id = " . 
$ilDB->quote($level_id, 
"integer") .
   172             " AND wsp_id = " . 
$ilDB->quote($wsp_id, 
"integer");
   174         $ilDB->manipulate($t);
   181         $t = 
"DELETE FROM skl_assigned_material WHERE " .
   182             " user_id = " . 
$ilDB->quote($user_id, 
"integer");
   183         $ilDB->manipulate($t);
   190         if (!$is_reference) {
   191             $t = 
"DELETE FROM skl_assigned_material WHERE " .
   192                 " skill_id = " . 
$ilDB->quote($skill_node_id, 
"integer");
   194             $t = 
"DELETE FROM skl_assigned_material WHERE " .
   195                 " tref_id = " . 
$ilDB->quote($skill_node_id, 
"integer");
   197         $ilDB->manipulate($t);
 
getAll(int $user_id, int $skill_id, int $tref_id)
Get all assigned materials (for a skill and user) 
 
Service SkillInternalFactoryService $factory_service
 
getFromRecord(array $rec)
 
assign(int $user_id, int $top_skill_id, int $tref_id, int $basic_skill_id, int $level_id, int $wsp_id)
Assign material to skill level. 
 
__construct(\ilDBInterface $db=null, Service\SkillInternalFactoryService $factory_service=null)
 
removeAllForUser(int $user_id)
 
count(int $user_id, int $tref_id, int $level_id)
Count assigned materials (for a skill level and user) 
 
removeAllForSkill(int $skill_node_id, bool $is_reference)
 
Skill internal factory service. 
 
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...