ILIAS  release_8 Revision v8.24
ilTermsOfServiceDocument Class Reference

Class ilTermsOfServiceDocument. More...

+ Inheritance diagram for ilTermsOfServiceDocument:
+ Collaboration diagram for ilTermsOfServiceDocument:

Public Member Functions

 content ()
 
 title ()
 
 id ()
 
 read ()
 
 buildFromArray (array $array)
 
 create ()
 
 update ()
 
 delete ()
 
 criteria ()
 
 attachCriterion (ilTermsOfServiceDocumentCriterionAssignment $criterionAssignment)
 
 detachCriterion (ilTermsOfServiceDocumentCriterionAssignment $criterionAssignment)
 
- Public Member Functions inherited from ActiveRecord
 getArConnector ()
 
 getArFieldList ()
 
 getConnectorContainerName ()
 @description Return the Name of your Connector Table More...
 
 setConnectorContainerName (string $connector_container_name)
 
 getPrimaryFieldValue ()
 
 setPrimaryFieldValue ($value)
 
 __construct ($primary_key=0)
 
 storeObjectToCache ()
 
 asStdClass ()
 
 buildFromArray (array $array)
 
 fixDateField ($field_name, $value)
 
 sleep ($field_name)
 
 wakeUp ($field_name, $field_value)
 
 getArrayForConnector ()
 
 installConnector ()
 
 store ()
 
 save ()
 
 create ()
 
 copy (int $new_id=0)
 
 afterObjectLoad ()
 
 read ()
 
 update ()
 
 delete ()
 
 __call ($name, $arguments)
 
 content ()
 
 title ()
 
 id ()
 
 criteria ()
 

Static Public Member Functions

static returnDbTableName ()
 
- Static Public Member Functions inherited from ActiveRecord
static returnDbTableName ()
 
static installDB ()
 
static renameDBField (string $old_name, string $new_name)
 
static tableExists ()
 
static fieldExists (string $field_name)
 
static removeDBField (string $field_name)
 
static updateDB ()
 
static resetDB ()
 
static truncateDB ()
 
static flushDB ()
 @depracated never use in ILIAS Core, Plugins only More...
 
static preloadObjects ()
 
static additionalParams (array $additional_params)
 
static findOrFail ($primary_key, array $add_constructor_args=array())
 Tries to find the object and throws an Exception if object is not found, instead of returning null. More...
 
static findOrGetInstance ($primary_key, array $add_constructor_args=array())
 
static where ($where, $operator=null)
 
static innerjoinAR (ActiveRecord $ar, $on_this, $on_external, array $fields=array(' *'), string $operator='=', $both_external=false)
 
static innerjoin ( $tablename, $on_this, $on_external, array $fields=array(' *'), string $operator='=', bool $both_external=false)
 
static leftjoin ( $tablename, $on_this, $on_external, array $fields=array(' *'), string $operator='=', bool $both_external=false)
 
static orderBy ($orderBy, string $orderDirection='ASC')
 
static dateFormat (string $date_format='d.m.Y - H:i:s')
 
static limit ($start, $end)
 
static affectedRows ()
 
static count ()
 
static get ()
 
static debug ()
 
static first ()
 
static getCollection ()
 
static last ()
 
static getFirstFromLastQuery ()
 
static connector (arConnector $connector)
 
static raw (bool $set_raw=true)
 
static getArray (?string $key=null, $values=null)
 
static _toCamelCase (string $str, bool $capitalise_first_char=false)
 

Protected Attributes

int $id = null
 
int $creation_ts = 0
 
int $modification_ts = 0
 
int $owner_usr_id = 0
 
int $last_modified_usr_id = 0
 
int $sorting = 0
 
string $title = null
 
string $text = ''
 
array $criteria = []
 
array $initialPersistedCriteria = []
 
- Protected Attributes inherited from ActiveRecord
bool $ar_safe_read = true
 
string $connector_container_name = ''
 
bool $is_new = true
 

Private Attributes

const TABLE_NAME = 'tos_documents'
 
bool $criteriaFetched = false
 

Additional Inherited Members

- Protected Member Functions inherited from ActiveRecord
 installDatabase ()
 
- Static Protected Member Functions inherited from ActiveRecord
static getCalledClass ()
 @description Returns an instance of the instatiated calling active record (needs to be done in static methods) @TODO : This should be cached somehow More...
 
static fromCamelCase (string $str)
 

Detailed Description

Member Function Documentation

◆ attachCriterion()

ilTermsOfServiceDocument::attachCriterion ( ilTermsOfServiceDocumentCriterionAssignment  $criterionAssignment)
Parameters
ilTermsOfServiceDocumentCriterionAssignment$criterionAssignment
Exceptions
ilTermsOfServiceDuplicateCriterionAssignmentException

Definition at line 201 of file class.ilTermsOfServiceDocument.php.

201 : void
202 {
203 foreach ($this->criteria as $currentAssignment) {
204 if ($currentAssignment->equals($criterionAssignment)) {
206 'Cannot attach duplicate criterion with criterion typeIdent %s and value: %s',
207 $criterionAssignment->getCriterionId(),
208 var_export($criterionAssignment->getCriterionValue(), true)
209 ));
210 }
211 }
212
213 $this->criteria[] = $criterionAssignment;
214 }

References criteria(), ilTermsOfServiceDocumentCriterionAssignment\getCriterionId(), and ilTermsOfServiceDocumentCriterionAssignment\getCriterionValue().

+ Here is the call graph for this function:

◆ buildFromArray()

ilTermsOfServiceDocument::buildFromArray ( array  $array)

Reimplemented from ActiveRecord.

Definition at line 129 of file class.ilTermsOfServiceDocument.php.

130 {
131 $document = parent::buildFromArray($array);
132
133 $this->fetchAllCriterionAssignments();
134
135 return $document;
136 }
Class ActiveRecord.

◆ content()

ilTermsOfServiceDocument::content ( )

Implements ilTermsOfServiceSignableDocument.

Definition at line 107 of file class.ilTermsOfServiceDocument.php.

107 : string
108 {
109 return $this->text;
110 }

References $text.

◆ create()

ilTermsOfServiceDocument::create ( )

Reimplemented from ActiveRecord.

Definition at line 138 of file class.ilTermsOfServiceDocument.php.

138 : void
139 {
140 $this->setCreationTs(time());
141
142 parent::create();
143
144 foreach ($this->criteria as $criterionAssignment) {
145 $criterionAssignment->setDocId($this->getId());
146 $criterionAssignment->store();
147 }
148
149 $this->initialPersistedCriteria = $this->criteria;
150 }

References $criteria, criteria(), and ILIAS\Survey\Mode\getId().

+ Here is the call graph for this function:

◆ criteria()

◆ delete()

ilTermsOfServiceDocument::delete ( )

Reimplemented from ActiveRecord.

Definition at line 181 of file class.ilTermsOfServiceDocument.php.

181 : void
182 {
183 foreach ($this->initialPersistedCriteria as $criterionAssignment) {
184 $criterionAssignment->delete();
185 }
186
187 $this->initialPersistedCriteria = $this->criteria = [];
188
189 parent::delete();
190 }

References criteria().

+ Here is the call graph for this function:

◆ detachCriterion()

ilTermsOfServiceDocument::detachCriterion ( ilTermsOfServiceDocumentCriterionAssignment  $criterionAssignment)
Parameters
ilTermsOfServiceDocumentCriterionAssignment$criterionAssignment
Exceptions
OutOfBoundsException

Definition at line 220 of file class.ilTermsOfServiceDocument.php.

220 : void
221 {
222 $numCriteriaBeforeRemoval = count($this->criteria);
223
224 $this->criteria = array_filter(
225 $this->criteria,
226 static function (ilTermsOfServiceDocumentCriterionAssignment $currentAssignment) use (
227 $criterionAssignment
228 ): bool {
229 return !$currentAssignment->equals($criterionAssignment);
230 }
231 );
232
233 $numCriteriaAfterRemoval = count($this->criteria);
234
235 if ($numCriteriaAfterRemoval === $numCriteriaBeforeRemoval) {
236 throw new OutOfBoundsException(sprintf(
237 'Could not find any criterion with criterion typeIdent %s and value: %s',
238 $criterionAssignment->getCriterionId(),
239 var_export($criterionAssignment->getCriterionValue(), true)
240 ));
241 }
242 }

References ActiveRecord\count(), criteria(), ilTermsOfServiceDocumentCriterionAssignment\equals(), ilTermsOfServiceDocumentCriterionAssignment\getCriterionId(), and ilTermsOfServiceDocumentCriterionAssignment\getCriterionValue().

Referenced by ilTermsOfServiceDocumentGUI\detachCriterionAssignment().

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

◆ id()

ilTermsOfServiceDocument::id ( )

Implements ilTermsOfServiceSignableDocument.

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

117 : int
118 {
119 return $this->id;
120 }

References $id.

◆ read()

ilTermsOfServiceDocument::read ( )
Exceptions
arException

Reimplemented from ActiveRecord.

Definition at line 122 of file class.ilTermsOfServiceDocument.php.

122 : void
123 {
124 parent::read();
125
126 $this->fetchAllCriterionAssignments();
127 }

◆ returnDbTableName()

static ilTermsOfServiceDocument::returnDbTableName ( )
static
Exceptions

arException

Deprecated:

Reimplemented from ActiveRecord.

Definition at line 102 of file class.ilTermsOfServiceDocument.php.

102 : string
103 {
104 return self::TABLE_NAME;
105 }

References TABLE_NAME.

◆ title()

ilTermsOfServiceDocument::title ( )

Implements ilTermsOfServiceSignableDocument.

Definition at line 112 of file class.ilTermsOfServiceDocument.php.

112 : string
113 {
114 return $this->title;
115 }

References $title.

◆ update()

ilTermsOfServiceDocument::update ( )

Reimplemented from ActiveRecord.

Definition at line 152 of file class.ilTermsOfServiceDocument.php.

152 : void
153 {
154 $this->setModificationTs(time());
155
156 foreach ($this->criteria as $criterionAssignment) {
157 $criterionAssignment->setDocId($this->getId());
158 $criterionAssignment->store();
159 }
160
161 foreach ($this->initialPersistedCriteria as $criterionAssignment) {
162 $found = array_filter(
163 $this->criteria,
164 static function (ilTermsOfServiceDocumentCriterionAssignment $criterionToMatch) use (
165 $criterionAssignment
166 ): bool {
167 return $criterionToMatch->getId() === $criterionAssignment->getId();
168 }
169 );
170
171 if (0 === count($found)) {
172 $criterionAssignment->delete();
173 }
174 }
175
176 $this->initialPersistedCriteria = $this->criteria;
177
178 parent::update();
179 }

References $criteria, ActiveRecord\count(), criteria(), and ILIAS\Survey\Mode\getId().

Referenced by ilTermsOfServiceDocumentGUI\detachCriterionAssignment().

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

Field Documentation

◆ $creation_ts

int ilTermsOfServiceDocument::$creation_ts = 0
protected

Definition at line 45 of file class.ilTermsOfServiceDocument.php.

◆ $criteria

array ilTermsOfServiceDocument::$criteria = []
protected

Definition at line 95 of file class.ilTermsOfServiceDocument.php.

Referenced by create(), criteria(), and update().

◆ $criteriaFetched

bool ilTermsOfServiceDocument::$criteriaFetched = false
private

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

◆ $id

int ilTermsOfServiceDocument::$id = null
protected

Definition at line 37 of file class.ilTermsOfServiceDocument.php.

Referenced by id().

◆ $initialPersistedCriteria

array ilTermsOfServiceDocument::$initialPersistedCriteria = []
protected

Definition at line 98 of file class.ilTermsOfServiceDocument.php.

◆ $last_modified_usr_id

int ilTermsOfServiceDocument::$last_modified_usr_id = 0
protected

Definition at line 69 of file class.ilTermsOfServiceDocument.php.

◆ $modification_ts

int ilTermsOfServiceDocument::$modification_ts = 0
protected

Definition at line 53 of file class.ilTermsOfServiceDocument.php.

◆ $owner_usr_id

int ilTermsOfServiceDocument::$owner_usr_id = 0
protected

Definition at line 61 of file class.ilTermsOfServiceDocument.php.

◆ $sorting

int ilTermsOfServiceDocument::$sorting = 0
protected

Definition at line 77 of file class.ilTermsOfServiceDocument.php.

◆ $text

string ilTermsOfServiceDocument::$text = ''
protected

Definition at line 92 of file class.ilTermsOfServiceDocument.php.

Referenced by content().

◆ $title

string ilTermsOfServiceDocument::$title = null
protected

Definition at line 85 of file class.ilTermsOfServiceDocument.php.

Referenced by title().

◆ TABLE_NAME

const ilTermsOfServiceDocument::TABLE_NAME = 'tos_documents'
private

Definition at line 27 of file class.ilTermsOfServiceDocument.php.

Referenced by returnDbTableName().


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