ILIAS  release_9 Revision v9.13-25-g2c18ec4c24f
ilStudyProgrammeValidityOfAchievedQualificationSettings Class Reference
+ Collaboration diagram for ilStudyProgrammeValidityOfAchievedQualificationSettings:

Public Member Functions

 __construct (?int $qualification_period, ?DateTimeImmutable $qualification_date, ?int $restart_period, 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)
 

Protected Attributes

int $qualification_period
 
DateTimeImmutable $qualification_date
 
int $restart_period
 
 $restart_recheck
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

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

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

References $qualification_date, $qualification_period, $restart_period, and $restart_recheck.

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

Member Function Documentation

◆ getQualificationDate()

ilStudyProgrammeValidityOfAchievedQualificationSettings::getQualificationDate ( )

◆ getQualificationPeriod()

ilStudyProgrammeValidityOfAchievedQualificationSettings::getQualificationPeriod ( )

◆ getRestartPeriod()

ilStudyProgrammeValidityOfAchievedQualificationSettings::getRestartPeriod ( )

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

References $restart_period.

Referenced by toFormInput().

+ Here is the caller graph for this function:

◆ getRestartRecheck()

ilStudyProgrammeValidityOfAchievedQualificationSettings::getRestartRecheck ( )

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

References $restart_recheck.

Referenced by toFormInput().

+ Here is the caller graph for this function:

◆ toFormInput()

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

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

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

114  $format = $data_factory->dateFormat()->germanShort();
115  $grp1 = $input->group([], $lng->txt('prg_no_validity_qualification'));
116  $grp2 = $input->group(
117  [
118  'vq_period' => $input->numeric(
119  $lng->txt('vq_period_label'),
120  $lng->txt('validity_qualification_period_desc')
121  )
122  ->withAdditionalTransformation($refinery->int()->isGreaterThanOrEqual(1))
124  ],
125  $lng->txt('validity_qualification_period')
126  );
127  $grp3 = $input->group(
128  [
129  'vq_date' => $input->dateTime(
130  $lng->txt('vq_date_label'),
131  $lng->txt('validity_qualification_date_desc')
132  )
133  ->withFormat($format)
134  ->withValue($this->getQualificationDate() !== null ? $this->getQualificationDate()->format('d.m.Y') : '')
135  ->withRequired(true)
136  ],
137  $lng->txt('validity_qualification_date')
138  );
139  $grp4 = $input->group([], $lng->txt('prg_no_restart'));
140  $grp5 = $input->group(
141  [
142  'vq_restart_period' => $input->numeric(
143  $lng->txt('restart_period_label'),
144  $lng->txt('restart_period_desc')
145  )
146  ->withAdditionalTransformation($refinery->int()->isGreaterThan(0))
147  ->withValue($this->getRestartPeriod() !== null ? $this->getRestartPeriod() : null)
148  ->withRequired(true),
149 
150  'vq_restart_recheck' => $input->checkbox(
151  $lng->txt('restart_recheck_label'),
152  $lng->txt('restart_recheck_desc')
153  )
154  ->withValue($this->getRestartRecheck())
155 
156  ],
157  $lng->txt('restart_period')
158  );
159 
160  $sg1 = $input->switchableGroup(
161  [
162  'opt_no_validity_qualification' => $grp1,
163  'opt_validity_qualification_period' => $grp2,
164  'opt_validity_qualification_date' => $grp3
165  ],
166  ''
167  )->withLabel($lng->txt('optgrp_label_validity'));
168 
169  $sg2 = $input->switchableGroup(
170  [
171  'opt_no_restart' => $grp4,
172  'opt_restart_period' => $grp5,
173  ],
174  ''
175  )->withLabel($lng->txt('optgrp_label_restart'));
176 
177  $validity_qualification = "opt_no_validity_qualification";
178  if (!is_null($this->getQualificationPeriod()) && $this->getQualificationPeriod() > 0) {
179  $validity_qualification = 'opt_validity_qualification_period';
180  }
181 
182  if (!is_null($this->getQualificationDate())) {
183  $validity_qualification = 'opt_validity_qualification_date';
184  }
185 
186  $restart_value = 'opt_no_restart';
187  if (!is_null($this->getRestartPeriod()) && $this->getRestartPeriod() > 0) {
188  $restart_value = 'opt_restart_period';
189  }
190 
191  return $input->section(
192  [
193  'validity_qualification' => $sg1->withValue($validity_qualification),
194  'restart' => $sg2->withValue($restart_value)
195  ],
196  $lng->txt('prg_validity_of_qualification')
197  )
198  ->withAdditionalTransformation($refinery->custom()->transformation(function (array $vals) {
199  $vq_period = null;
200  $vq_date = null;
201  $restart = null;
202  $restart_recheck = false;
203 
204  if (isset($vals['validity_qualification'][1]['vq_period'])) {
205  $vq_period = (int) $vals['validity_qualification'][1]['vq_period'];
206  }
207 
208  if (isset($vals['validity_qualification'][1]['vq_date'])) {
209  $vq_date = $vals['validity_qualification'][1]['vq_date'];
210  }
211 
212  if (
213  count($vals['restart'][1]) > 0 &&
214  !is_null($vals['restart'][1]['vq_restart_period'])
215  ) {
216  $restart = (int) $vals['restart'][1]['vq_restart_period'];
217  $restart_recheck = (bool) $vals['restart'][1]['vq_restart_recheck'];
218  }
219 
221  $vq_period,
222  $vq_date,
223  $restart,
225  );
226  }));
227  }
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...
withValue($value)
Get an input like this with another value displayed on the client side.
Definition: Group.php:58
This describes inputs that can be used in forms.
Definition: FormInput.php:31
Refinery Factory $refinery
+ Here is the call graph for this function:

◆ withQualificationDate()

ilStudyProgrammeValidityOfAchievedQualificationSettings::withQualificationDate ( ?DateTimeImmutable  $qualification_date)

◆ withQualificationPeriod()

ilStudyProgrammeValidityOfAchievedQualificationSettings::withQualificationPeriod ( ?int  $qualification_period)

◆ withRestartPeriod()

ilStudyProgrammeValidityOfAchievedQualificationSettings::withRestartPeriod ( ?int  $restart_period)

◆ withRestartRecheck()

ilStudyProgrammeValidityOfAchievedQualificationSettings::withRestartRecheck ( bool  $restart_recheck)

Field Documentation

◆ $qualification_date

DateTimeImmutable ilStudyProgrammeValidityOfAchievedQualificationSettings::$qualification_date
protected

◆ $qualification_period

int ilStudyProgrammeValidityOfAchievedQualificationSettings::$qualification_period
protected

◆ $restart_period

int ilStudyProgrammeValidityOfAchievedQualificationSettings::$restart_period
protected

◆ $restart_recheck

ilStudyProgrammeValidityOfAchievedQualificationSettings::$restart_recheck
protected

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