ILIAS  release_7 Revision v7.30-3-g800a261c036
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 {
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 {
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}
An exception for terminatinating execution or to throw for unit testing.
Class ilObjSurvey.
Skill tresholds for 360 surveys.
writeThreshold($a_base_skill_id, $a_tref_id, $a_level_id, $a_threshold)
Write threshold.
cloneTo(ilObjSurvey $target_survey, array $mapping)
__construct(ilObjSurvey $a_survey)
Constructor.
global $DIC
Definition: goto.php:24
global $ilDB