ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ilIndividualAssessmentSettingsStorageDB Class Reference

A settings storage handler to write iass settings to db. More...

+ Inheritance diagram for ilIndividualAssessmentSettingsStorageDB:
+ Collaboration diagram for ilIndividualAssessmentSettingsStorageDB:

Public Member Functions

 __construct (ilDBInterface $db)
 
 createSettings (ilIndividualAssessmentSettings $settings)
 Create an entry corresponding to $settings. More...
 
 loadSettings (ilObjIndividualAssessment $obj)
 Load settings corresponding to obj. More...
 
 updateSettings (ilIndividualAssessmentSettings $settings)
 Update settings entry. More...
 
 loadInfoSettings (ilObjIndividualAssessment $obj)
 Load info-screen settings corresponding to obj. More...
 
 updateInfoSettings (ilIndividualAssessmentInfoSettings $settings)
 Update info-screen settings entry. More...
 
 deleteSettings (ilObjIndividualAssessment $obj)
 Delete settings entry corresponding to obj. More...
 
 createSettings (ilIndividualAssessmentSettings $settings)
 Create an entry corresponding to $settings. More...
 
 loadSettings (ilObjIndividualAssessment $obj)
 Load settings corresponding to obj. More...
 
 updateSettings (ilIndividualAssessmentSettings $settings)
 Update settings entry. More...
 
 loadInfoSettings (ilObjIndividualAssessment $obj)
 Load info-screen settings corresponding to obj. More...
 
 updateInfoSettings (ilIndividualAssessmentInfoSettings $settings)
 Update info-screen settings entry. More...
 
 deleteSettings (ilObjIndividualAssessment $obj)
 Delete settings entry corresponding to obj. More...
 

Data Fields

const IASS_SETTINGS_TABLE = "iass_settings"
 
const IASS_SETTINGS_INFO_TABLE = "iass_info_settings"
 

Protected Attributes

ilDBInterface $db
 

Detailed Description

A settings storage handler to write iass settings to db.

Definition at line 24 of file class.ilIndividualAssessmentSettingsStorageDB.php.

Constructor & Destructor Documentation

◆ __construct()

ilIndividualAssessmentSettingsStorageDB::__construct ( ilDBInterface  $db)

Member Function Documentation

◆ createSettings()

ilIndividualAssessmentSettingsStorageDB::createSettings ( ilIndividualAssessmentSettings  $settings)

Create an entry corresponding to $settings.

Implements ilIndividualAssessmentSettingsStorage.

Definition at line 39 of file class.ilIndividualAssessmentSettingsStorageDB.php.

39 : void
40 {
41 $values = [
42 "obj_id" => ["integer", $settings->getObjId()],
43 "content" => ["text", $settings->getContent()],
44 "record_template" => ["text", $settings->getRecordTemplate()],
45 "event_time_place_required" => ["integer", $settings->isEventTimePlaceRequired()],
46 "file_required" => ["integer", $settings->isFileRequired()]
47 ];
48
49 $this->db->insert(self::IASS_SETTINGS_TABLE, $values);
50
51 $values = ["obj_id" => ["integer", $settings->getObjId()]];
52 $this->db->insert(self::IASS_SETTINGS_INFO_TABLE, $values);
53 }
isEventTimePlaceRequired()
Get the value of the checkbox event_time_place_require.
isFileRequired()
Get the value of the checkbox file_required.
getObjId()
Get the id of corresponding iass-object.
getRecordTemplate()
Get the record template to be used as default record with corresponding object.
getContent()
Get the content of this assessment, e.g.

References ilIndividualAssessmentSettings\getContent(), ilIndividualAssessmentSettings\getObjId(), ilIndividualAssessmentSettings\getRecordTemplate(), ilIndividualAssessmentSettings\isEventTimePlaceRequired(), and ilIndividualAssessmentSettings\isFileRequired().

+ Here is the call graph for this function:

◆ deleteSettings()

ilIndividualAssessmentSettingsStorageDB::deleteSettings ( ilObjIndividualAssessment  $obj)

Delete settings entry corresponding to obj.

Implements ilIndividualAssessmentSettingsStorage.

Definition at line 168 of file class.ilIndividualAssessmentSettingsStorageDB.php.

168 : void
169 {
170 $sql = "DELETE FROM " . self::IASS_SETTINGS_TABLE . " WHERE obj_id = %s";
171 $this->db->manipulateF($sql, array("integer"), array($obj->getId()));
172
173 $sql = "DELETE FROM " . self::IASS_SETTINGS_INFO_TABLE . " WHERE obj_id = %s";
174 $this->db->manipulateF($sql, array("integer"), array($obj->getId()));
175 }

References ilObject\getId().

+ Here is the call graph for this function:

◆ loadInfoSettings()

ilIndividualAssessmentSettingsStorageDB::loadInfoSettings ( ilObjIndividualAssessment  $obj)

Load info-screen settings corresponding to obj.

Implements ilIndividualAssessmentSettingsStorage.

Definition at line 117 of file class.ilIndividualAssessmentSettingsStorageDB.php.

118 {
119 if (!ilObjIndividualAssessment::_exists($obj->getId(), false, 'iass')) {
120 return new ilIndividualAssessmentInfoSettings($obj->getId());
121 }
122
123 $sql =
124 "SELECT contact, responsibility, phone, mails, consultation_hours" . PHP_EOL
125 . "FROM " . self::IASS_SETTINGS_INFO_TABLE . PHP_EOL
126 . "WHERE obj_id = " . $this->db->quote($obj->getId(), 'integer') . PHP_EOL
127 ;
128
129 $result = $this->db->query($sql);
130
131 if ($this->db->numRows($result) == 0) {
132 throw new ilIndividualAssessmentException($obj->getId() . " not in database");
133 }
134
135 $row = $this->db->fetchAssoc($result);
136
138 $obj->getId(),
139 $row["contact"],
140 $row["responsibility"],
141 $row['phone'],
142 $row['mails'],
143 $row['consultation_hours']
144 );
145 }
static _exists(int $id, bool $reference=false, ?string $type=null)
checks if an object exists in object_data

References ilObject\_exists(), and ilObject\getId().

Referenced by ilObjIndividualAssessment\read().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ loadSettings()

ilIndividualAssessmentSettingsStorageDB::loadSettings ( ilObjIndividualAssessment  $obj)

Load settings corresponding to obj.

Implements ilIndividualAssessmentSettingsStorage.

Definition at line 58 of file class.ilIndividualAssessmentSettingsStorageDB.php.

59 {
60 if (!ilObjIndividualAssessment::_exists($obj->getId(), false, 'iass')) {
62 $obj->getId(),
63 '',
64 '',
65 '',
66 '',
67 false,
68 false
69 );
70 }
71
72 $sql =
73 "SELECT content, record_template, event_time_place_required, file_required" . PHP_EOL
74 . "FROM " . self::IASS_SETTINGS_TABLE . PHP_EOL
75 . "WHERE obj_id = " . $this->db->quote($obj->getId(), 'integer') . PHP_EOL
76 ;
77
78 $result = $this->db->query($sql);
79
80 if ($this->db->numRows($result) == 0) {
81 throw new ilIndividualAssessmentException($obj->getId() . " not in database");
82 }
83
84 $row = $this->db->fetchAssoc($result);
85
87 $obj->getId(),
88 $obj->getTitle(),
89 $obj->getDescription(),
90 $row["content"],
91 $row["record_template"],
92 (bool) $row["event_time_place_required"],
93 (bool) $row['file_required']
94 );
95 }
An object carrying settings of an Individual Assessment obj beyond the standard information.

References ilObject\_exists(), ilObject\getDescription(), ilObject\getId(), and ilObject\getTitle().

Referenced by ilObjIndividualAssessment\read().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateInfoSettings()

ilIndividualAssessmentSettingsStorageDB::updateInfoSettings ( ilIndividualAssessmentInfoSettings  $settings)

Update info-screen settings entry.

Implements ilIndividualAssessmentSettingsStorage.

Definition at line 150 of file class.ilIndividualAssessmentSettingsStorageDB.php.

150 : void
151 {
152 $where = ["obj_id" => ["integer", $settings->getObjId()]];
153
154 $values = [
155 "contact" => ["text", $settings->getContact()],
156 "responsibility" => ["text", $settings->getResponsibility()],
157 "phone" => ["text", $settings->getPhone()],
158 "mails" => ["text", $settings->getMails()],
159 "consultation_hours" => ["text", $settings->getConsultationHours()]
160 ];
161
162 $this->db->update(self::IASS_SETTINGS_INFO_TABLE, $values, $where);
163 }

References ilIndividualAssessmentInfoSettings\getConsultationHours(), ilIndividualAssessmentInfoSettings\getContact(), ilIndividualAssessmentInfoSettings\getMails(), ilIndividualAssessmentInfoSettings\getObjId(), ilIndividualAssessmentInfoSettings\getPhone(), and ilIndividualAssessmentInfoSettings\getResponsibility().

+ Here is the call graph for this function:

◆ updateSettings()

ilIndividualAssessmentSettingsStorageDB::updateSettings ( ilIndividualAssessmentSettings  $settings)

Update settings entry.

Implements ilIndividualAssessmentSettingsStorage.

Definition at line 100 of file class.ilIndividualAssessmentSettingsStorageDB.php.

100 : void
101 {
102 $where = ["obj_id" => ["integer", $settings->getObjId()]];
103
104 $values = [
105 "content" => ["text", $settings->getContent()],
106 "record_template" => ["text", $settings->getRecordTemplate()],
107 "event_time_place_required" => ["integer", $settings->isEventTimePlaceRequired()],
108 "file_required" => ["integer", $settings->isFileRequired()]
109 ];
110
111 $this->db->update(self::IASS_SETTINGS_TABLE, $values, $where);
112 }

References ilIndividualAssessmentSettings\getContent(), ilIndividualAssessmentSettings\getObjId(), ilIndividualAssessmentSettings\getRecordTemplate(), ilIndividualAssessmentSettings\isEventTimePlaceRequired(), and ilIndividualAssessmentSettings\isFileRequired().

+ Here is the call graph for this function:

Field Documentation

◆ $db

ilDBInterface ilIndividualAssessmentSettingsStorageDB::$db
protected

Definition at line 29 of file class.ilIndividualAssessmentSettingsStorageDB.php.

Referenced by __construct().

◆ IASS_SETTINGS_INFO_TABLE

const ilIndividualAssessmentSettingsStorageDB::IASS_SETTINGS_INFO_TABLE = "iass_info_settings"

◆ IASS_SETTINGS_TABLE

const ilIndividualAssessmentSettingsStorageDB::IASS_SETTINGS_TABLE = "iass_settings"

The documentation for this class was generated from the following file: