ILIAS  release_8 Revision v8.19-1-g4e8f2f9140c
All Data Structures Namespaces Files Functions Variables Modules Pages
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 ( )

◆ toFormInput()

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

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

References $format, $restart_recheck, ILIAS\Data\Factory\dateFormat(), getQualificationDate(), getQualificationPeriod(), getRestartPeriod(), 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  ->withRequired(true)
125  ],
126  $lng->txt('validity_qualification_period')
127  );
128  $grp3 = $input->group(
129  [
130  'vq_date' => $input->dateTime(
131  $lng->txt('vq_date_label'),
132  $lng->txt('validity_qualification_date_desc')
133  )
134  ->withFormat($format)
135  ->withValue($this->getQualificationDate() !== null ? $this->getQualificationDate()->format('d.m.Y') : '')
136  ->withRequired(true)
137  ],
138  $lng->txt('validity_qualification_date')
139  );
140  $grp4 = $input->group([], $lng->txt('prg_no_restart'));
141  $grp5 = $input->group(
142  [
143  'vq_restart_period' => $input->numeric(
144  $lng->txt('restart_period_label'),
145  $lng->txt('restart_period_desc')
146  )
147  ->withAdditionalTransformation($refinery->int()->isGreaterThan(0))
148  ->withValue($this->getRestartPeriod() !== null ? $this->getRestartPeriod() : null)
149  ->withRequired(true)
150  ],
151  $lng->txt('restart_period')
152  );
153 
154  $sg1 = $input->switchableGroup(
155  [
156  'opt_no_validity_qualification' => $grp1,
157  'opt_validity_qualification_period' => $grp2,
158  'opt_validity_qualification_date' => $grp3
159  ],
160  ''
161  )->withLabel($lng->txt('optgrp_label_validity'));
162 
163  $sg2 = $input->switchableGroup(
164  [
165  'opt_no_restart' => $grp4,
166  'opt_restart_period' => $grp5,
167  ],
168  ''
169  )->withLabel($lng->txt('optgrp_label_restart'));
170 
171  $validity_qualification = "opt_no_validity_qualification";
172  if (!is_null($this->getQualificationPeriod()) && $this->getQualificationPeriod() > 0) {
173  $validity_qualification = 'opt_validity_qualification_period';
174  }
175 
176  if (!is_null($this->getQualificationDate())) {
177  $validity_qualification = 'opt_validity_qualification_date';
178  }
179 
180  $restart_value = 'opt_no_restart';
181  if (!is_null($this->getRestartPeriod()) && $this->getRestartPeriod() > 0) {
182  $restart_value = 'opt_restart_period';
183  }
184 
185  return $input->section(
186  [
187  'validity_qualification' => $sg1->withValue($validity_qualification),
188  'restart' => $sg2->withValue($restart_value)
189  ],
190  $lng->txt('prg_validity_of_qualification')
191  )
192  ->withAdditionalTransformation($refinery->custom()->transformation(function (array $vals) {
193  $vq_period = null;
194  $vq_date = null;
195  $restart = null;
196  $restart_recheck = false;
197 
198  if (isset($vals['validity_qualification'][1]['vq_period'])) {
199  $vq_period = (int) $vals['validity_qualification'][1]['vq_period'];
200  }
201 
202  if (isset($vals['validity_qualification'][1]['vq_date'])) {
203  $vq_date = $vals['validity_qualification'][1]['vq_date'];
204  }
205 
206  if (
207  count($vals['restart'][1]) > 0 &&
208  !is_null($vals['restart'][1]['vq_restart_period'])
209  ) {
210  $restart = (int) $vals['restart'][1]['vq_restart_period'];
211  }
212 
214  $vq_period,
215  $vq_date,
216  $restart,
218  );
219  }));
220  }
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...
$format
Definition: metadata.php:235
withValue($value)
Get an input like this with another value displayed on the client side.
Definition: Group.php:59
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: