ILIAS  release_7 Revision v7.30-3-g800a261c036
All Data Structures Namespaces Files Functions Variables Modules Pages
class.ilSurveySkillThresholds.php
Go to the documentation of this file.
1 <?php
2 
3 /* Copyright (c) 1998-2012 ILIAS open source, Extended GPL, see docs/LICENSE */
4 
13 {
17  protected $db;
18 
19 
26  public function __construct(ilObjSurvey $a_survey)
27  {
28  global $DIC;
29 
30  $this->db = $DIC->database();
31  $this->survey = $a_survey;
32  $this->read();
33  }
34 
41  public function read()
42  {
43  $ilDB = $this->db;
44 
45  $set = $ilDB->query(
46  "SELECT * FROM svy_skill_threshold " .
47  " WHERE survey_id = " . $ilDB->quote($this->survey->getId(), "integer")
48  );
49  while ($rec = $ilDB->fetchAssoc($set)) {
50  $this->threshold[$rec['level_id']][$rec['tref_id']] =
51  $rec['threshold'];
52  }
53  }
54 
61  public function getThresholds()
62  {
63  return $this->threshold;
64  }
65 
72  public function writeThreshold($a_base_skill_id, $a_tref_id, $a_level_id, $a_threshold)
73  {
74  $ilDB = $this->db;
75 
76  $ilDB->replace(
77  "svy_skill_threshold",
78  array("survey_id" => array("integer", $this->survey->getId()),
79  "base_skill_id" => array("integer", (int) $a_base_skill_id),
80  "tref_id" => array("integer", (int) $a_tref_id),
81  "level_id" => array("integer", (int) $a_level_id)
82  ),
83  array("threshold" => array("integer", (int) $a_threshold))
84  );
85  }
86 
87  public function cloneTo(ilObjSurvey $target_survey, array $mapping) : void
88  {
89  $target_thresholds = new self($target_survey);
90  $set = $this->db->queryF("SELECT * FROM svy_skill_threshold " .
91  " WHERE survey_id = %s ",
92  ["integer"],
93  [$this->survey->getId()]
94  );
95  while ($rec = $this->db->fetchAssoc($set)) {
96  $target_thresholds->writeThreshold(
97  (int) $rec["base_skill_id"],
98  (int) $rec["tref_id"],
99  (int) $rec["level_id"],
100  (int) $rec["threshold"]
101  );
102  }
103  }
104 }
Class ilObjSurvey.
Skill tresholds for 360 surveys.
cloneTo(ilObjSurvey $target_survey, array $mapping)
global $DIC
Definition: goto.php:24
__construct(ilObjSurvey $a_survey)
Constructor.
writeThreshold($a_base_skill_id, $a_tref_id, $a_level_id, $a_threshold)
Write threshold.
global $ilDB