ILIAS  trunk Revision v11.0_alpha-1749-g1a06bdef097
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
ilStudyProgrammeValidityOfAchievedQualificationSettings Class Reference
+ Collaboration diagram for ilStudyProgrammeValidityOfAchievedQualificationSettings:

Public Member Functions

 __construct (protected ?int $qualification_period, protected ?DateTimeImmutable $qualification_date, protected ?int $restart_period, protected bool $restart_recheck)
 
 getQualificationPeriod ()
 
 withQualificationPeriod (?int $qualification_period)
 
 getQualificationDate ()
 
 withQualificationDate (?DateTimeImmutable $qualification_date)
 
 getRestartPeriod ()
 
 withRestartPeriod (?int $restart_period)
 
 toFormInput (Field\Factory $input, ilLanguage $lng, Refinery $refinery, Factory $data_factory)
 
 getRestartRecheck ()
 
 withRestartRecheck (bool $restart_recheck)
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ilStudyProgrammeValidityOfAchievedQualificationSettings::__construct ( protected ?int  $qualification_period,
protected ?DateTimeImmutable  $qualification_date,
protected ?int  $restart_period,
protected bool  $restart_recheck 
)

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

32  {
33  if (!is_null($qualification_period) && 0 > $qualification_period) {
34  throw new InvalidArgumentException(
35  'Numbers less than 0 are not allowed for qualification_period'
36  );
37  }
38 
39  if (!is_null($restart_period) && 0 > $restart_period) {
40  throw new InvalidArgumentException(
41  'Numbers less than 0 are not allowed for restart_period'
42  );
43  }
44 
45  $this->qualification_period = $qualification_period;
46  $this->qualification_date = $qualification_date;
47  $this->restart_period = $restart_period;
48  $this->restart_recheck = $restart_recheck;
49  }

Member Function Documentation

◆ getQualificationDate()

ilStudyProgrammeValidityOfAchievedQualificationSettings::getQualificationDate ( )

Definition at line 70 of file class.ilStudyProgrammeValidityOfAchievedQualificationSettings.php.

Referenced by toFormInput(), and updateProgressValidityFromSettings().

71  {
72  return $this->qualification_date;
73  }
+ Here is the caller graph for this function:

◆ getQualificationPeriod()

ilStudyProgrammeValidityOfAchievedQualificationSettings::getQualificationPeriod ( )

Definition at line 51 of file class.ilStudyProgrammeValidityOfAchievedQualificationSettings.php.

Referenced by toFormInput(), and updateProgressValidityFromSettings().

51  : ?int
52  {
53  return $this->qualification_period;
54  }
+ Here is the caller graph for this function:

◆ getRestartPeriod()

ilStudyProgrammeValidityOfAchievedQualificationSettings::getRestartPeriod ( )

Definition at line 84 of file class.ilStudyProgrammeValidityOfAchievedQualificationSettings.php.

Referenced by toFormInput().

84  : ?int
85  {
86  return $this->restart_period;
87  }
+ Here is the caller graph for this function:

◆ getRestartRecheck()

ilStudyProgrammeValidityOfAchievedQualificationSettings::getRestartRecheck ( )

Definition at line 224 of file class.ilStudyProgrammeValidityOfAchievedQualificationSettings.php.

Referenced by toFormInput().

224  : bool
225  {
226  return $this->restart_recheck;
227  }
+ Here is the caller graph for this function:

◆ toFormInput()

ilStudyProgrammeValidityOfAchievedQualificationSettings::toFormInput ( Field\Factory  $input,
ilLanguage  $lng,
Refinery  $refinery,
Factory  $data_factory 
)

Definition at line 103 of file class.ilStudyProgrammeValidityOfAchievedQualificationSettings.php.

References ILIAS\Data\Factory\dateFormat(), getQualificationDate(), getQualificationPeriod(), getRestartPeriod(), getRestartRecheck(), ILIAS\Repository\int(), null, ilLanguage\txt(), ILIAS\UI\Implementation\Component\Input\ViewControl\withAdditionalTransformation(), and ILIAS\UI\Implementation\Component\Input\withValue().

108  : \ILIAS\UI\Component\Input\Container\Form\FormInput {
109  $format = $data_factory->dateFormat()->germanShort();
110  $grp1 = $input->group([], $lng->txt('prg_no_validity_qualification'));
111  $grp2 = $input->group(
112  [
113  'vq_period' => $input->numeric(
114  $lng->txt('vq_period_label'),
115  $lng->txt('validity_qualification_period_desc')
116  )
117  ->withAdditionalTransformation($refinery->int()->isGreaterThanOrEqual(1))
119  ],
120  $lng->txt('validity_qualification_period')
121  );
122  $grp3 = $input->group(
123  [
124  'vq_date' => $input->dateTime(
125  $lng->txt('vq_date_label'),
126  $lng->txt('validity_qualification_date_desc')
127  )
128  ->withFormat($format)
129  ->withValue($this->getQualificationDate() !== null ? $this->getQualificationDate()->format('d.m.Y') : '')
130  ->withRequired(true)
131  ],
132  $lng->txt('validity_qualification_date')
133  );
134  $grp4 = $input->group([], $lng->txt('prg_no_restart'));
135  $grp5 = $input->group(
136  [
137  'vq_restart_period' => $input->numeric(
138  $lng->txt('restart_period_label'),
139  $lng->txt('restart_period_desc')
140  )
141  ->withAdditionalTransformation($refinery->int()->isGreaterThan(0))
142  ->withValue($this->getRestartPeriod() !== null ? $this->getRestartPeriod() : null)
143  ->withRequired(true),
144 
145  'vq_restart_recheck' => $input->checkbox(
146  $lng->txt('restart_recheck_label'),
147  $lng->txt('restart_recheck_desc')
148  )
149  ->withValue($this->getRestartRecheck())
150 
151  ],
152  $lng->txt('restart_period')
153  );
154 
155  $sg1 = $input->switchableGroup(
156  [
157  'opt_no_validity_qualification' => $grp1,
158  'opt_validity_qualification_period' => $grp2,
159  'opt_validity_qualification_date' => $grp3
160  ],
161  ''
162  )->withLabel($lng->txt('optgrp_label_validity'));
163 
164  $sg2 = $input->switchableGroup(
165  [
166  'opt_no_restart' => $grp4,
167  'opt_restart_period' => $grp5,
168  ],
169  ''
170  )->withLabel($lng->txt('optgrp_label_restart'));
171 
172  $validity_qualification = "opt_no_validity_qualification";
173  if (!is_null($this->getQualificationPeriod()) && $this->getQualificationPeriod() > 0) {
174  $validity_qualification = 'opt_validity_qualification_period';
175  }
176 
177  if (!is_null($this->getQualificationDate())) {
178  $validity_qualification = 'opt_validity_qualification_date';
179  }
180 
181  $restart_value = 'opt_no_restart';
182  if (!is_null($this->getRestartPeriod()) && $this->getRestartPeriod() > 0) {
183  $restart_value = 'opt_restart_period';
184  }
185 
186  return $input->section(
187  [
188  'validity_qualification' => $sg1->withValue($validity_qualification),
189  'restart' => $sg2->withValue($restart_value)
190  ],
191  $lng->txt('prg_validity_of_qualification')
192  )
193  ->withAdditionalTransformation($refinery->custom()->transformation(function (array $vals) {
194  $vq_period = null;
195  $vq_date = null;
196  $restart = null;
197  $restart_recheck = false;
198 
199  if (isset($vals['validity_qualification'][1]['vq_period'])) {
200  $vq_period = (int) $vals['validity_qualification'][1]['vq_period'];
201  }
202 
203  if (isset($vals['validity_qualification'][1]['vq_date'])) {
204  $vq_date = $vals['validity_qualification'][1]['vq_date'];
205  }
206 
207  if (
208  count($vals['restart'][1]) > 0 &&
209  !is_null($vals['restart'][1]['vq_restart_period'])
210  ) {
211  $restart = (int) $vals['restart'][1]['vq_restart_period'];
212  $restart_recheck = (bool) $vals['restart'][1]['vq_restart_recheck'];
213  }
214 
216  $vq_period,
217  $vq_date,
218  $restart,
219  $restart_recheck
220  );
221  }));
222  }
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
withValue($value)
Get an input like this with another value displayed on the client side.
Definition: Group.php:61
+ Here is the call graph for this function:

◆ withQualificationDate()

ilStudyProgrammeValidityOfAchievedQualificationSettings::withQualificationDate ( ?DateTimeImmutable  $qualification_date)

Definition at line 75 of file class.ilStudyProgrammeValidityOfAchievedQualificationSettings.php.

78  $clone = clone $this;
79  $clone->qualification_date = $qualification_date;
80 
81  return $clone;
82  }

◆ withQualificationPeriod()

ilStudyProgrammeValidityOfAchievedQualificationSettings::withQualificationPeriod ( ?int  $qualification_period)

Definition at line 56 of file class.ilStudyProgrammeValidityOfAchievedQualificationSettings.php.

59  if (!is_null($qualification_period) && 0 > $qualification_period) {
60  throw new InvalidArgumentException(
61  'Numbers less than 0 are not allowed'
62  );
63  }
64  $clone = clone $this;
65  $clone->qualification_period = $qualification_period;
66 
67  return $clone;
68  }

◆ withRestartPeriod()

ilStudyProgrammeValidityOfAchievedQualificationSettings::withRestartPeriod ( ?int  $restart_period)

Definition at line 89 of file class.ilStudyProgrammeValidityOfAchievedQualificationSettings.php.

92  if (!is_null($restart_period) && 0 > $restart_period) {
93  throw new InvalidArgumentException(
94  'Numbers less than 0 are not allowed'
95  );
96  }
97  $clone = clone $this;
98  $clone->restart_period = $restart_period;
99 
100  return $clone;
101  }

◆ withRestartRecheck()

ilStudyProgrammeValidityOfAchievedQualificationSettings::withRestartRecheck ( bool  $restart_recheck)

Definition at line 229 of file class.ilStudyProgrammeValidityOfAchievedQualificationSettings.php.

230  {
231  $clone = clone $this;
232  $clone->restart_recheck = $restart_recheck;
233  return $clone;
234  }

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