3 declare(strict_types=1);
37 $this->
lng = $DIC->language();
38 $this->
lng->loadLanguageModule(
'dateplaner');
39 $this->db = $DIC->database();
40 $this->setting = $DIC->settings();
45 return "cal_consultation";
50 return $this->
lng->txt(
"cal_ch_cron_reminder");
55 return $this->
lng->txt(
"cal_ch_cron_reminder_info");
60 return CronJobScheduleType::SCHEDULE_TYPE_DAILY;
87 $days_before = (
int) $this->setting->get(
'ch_reminder_days');
93 $query =
'SELECT * FROM booking_user ' .
94 'JOIN cal_entries ON entry_id = cal_id ' .
95 'WHERE notification_sent = ' . $this->db->quote(0,
'integer') .
' ' .
98 $res = $this->db->query($query);
101 $mail->setAppointmentId((
int) $row->entry_id);
102 $mail->setRecipients(array((
int) $row->user_id));
107 $query =
'UPDATE booking_user ' .
108 'SET notification_sent = ' . $this->db->quote(1,
'integer') .
' ' .
109 'WHERE user_id = ' . $this->db->quote($row->user_id,
'integer') .
' ' .
110 'AND entry_id = ' . $this->db->quote($row->entry_id,
'integer');
111 $this->db->manipulate($query);
119 $result->setStatus($status);
125 $consultation_days =
new ilNumberInputGUI($this->
lng->txt(
'cal_ch_cron_reminder_days'),
'ch_reminder_days');
126 $consultation_days->setMinValue(1);
127 $consultation_days->setMaxLength(2);
128 $consultation_days->setSize(2);
129 $consultation_days->setValue((
string) $this->setting->get(
'ch_reminder_days',
'2'));
130 $consultation_days->setRequired(
true);
131 $a_form->
addItem($consultation_days);
136 $this->setting->set(
'ch_reminder_days', (
string) $a_form->
getInput(
'ch_reminder_days'));
const TYPE_BOOKING_REMINDER
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Distributes calendar mail notifications.
final const STATUS_NO_ACTION
addCustomSettingsToForm(ilPropertyFormGUI $a_form)
Reminders for consultation hours.
saveCustomSettings(ilPropertyFormGUI $a_form)
getDefaultScheduleValue()