5 declare(strict_types=1);
10 const ID =
'prg_user_not_restarted';
32 $this->log = $DIC[
'ilLog'];
33 $this->lng = $DIC[
'lng'];
43 return $this->lng->txt(
'prg_user_not_restarted_title');
53 return $this->lng->txt(
'prg_user_not_restarted_desc');
93 return self::SCHEDULE_TYPE_IN_DAYS;
116 foreach ($this->user_assignments_db->getDueToRestartAndMail() as $assignment) {
118 $prg = $assignment->getStudyProgramme();
119 $validity_of_qualification = $prg->getValidityOfQualificationSettings();
120 $auto_re_assign = $validity_of_qualification->getRestartPeriod();
121 if ($auto_re_assign == -1) {
125 $auto_mail_settings = $prg->getAutoMailSettings();
126 $inform_by_days = $auto_mail_settings->getReminderNotRestartedByUserDays();
127 if (is_null($inform_by_days)) {
130 $restart_date = $assignment->getRestartDate();
131 $restart_date->sub(
new DateInterval((
'P' . $inform_by_days .
'D')));
133 $assignment->informUserByMailToRestart();
135 $this->log->write(
'an error occured: ' . $e->getMessage());
getDescription()
Get description.
getDefaultScheduleType()
Get schedule type.
Cron job application base class.
getDefaultScheduleValue()
Get schedule value.
hasFlexibleSchedule()
Can the schedule be configured?
hasAutoActivation()
Is to be activated on "installation".
Cron job result data container.