39 : void
40 {
41 $is_message_enabled = (bool) $this->
settings->get(
'mail_notification_message',
'0');
42
43 $res = $this->db->queryF(
44 'SELECT mail.* FROM mail_options
45 INNER JOIN mail ON mail.user_id = mail_options.user_id
46 INNER JOIN mail_obj_data ON mail_obj_data.obj_id = mail.folder_id
47 INNER JOIN usr_data ud ON ud.usr_id = mail.user_id
48 WHERE mail_options.cronjob_notification = %s
49 AND mail.send_time >= %s
50 AND mail.m_status = %s
51 AND ud.active = %s',
52 ['integer', 'timestamp', 'text', 'integer'],
53 [1, date('Y-m-d H:i:s', time() - 60 * 60 * 24), 'unread', 1]
54 );
55
56 $users = [];
58
59 while ($row = $this->db->fetchAssoc(
$res)) {
62 }
64 }
65 $sender = $this->sender_factory->system();
66
67 foreach ($users as
$user_id => $mail_data) {
70
72
75
78 if (count($mail_data) === 1) {
80 $user_lang->txt('mail_at_the_ilias_installation'),
81 count($mail_data),
83 ));
84 } else {
86 $user_lang->txt('mails_at_the_ilias_installation'),
87 count($mail_data),
89 ));
90 }
92
94 foreach ($mail_data as
$mail) {
96 '----------------------------------------------------------------------------------------------'
97 );
100 $this->
appendBody($user_lang->txt(
'date') .
': ' .
$mail[
'send_time']);
104 } else {
106 }
107 $this->
appendBody($user_lang->txt(
'sender') .
': ' . $sender_name);
109 $this->
appendBody($user_lang->txt(
'subject') .
': ' .
$mail[
'm_subject']);
111
112 if ($is_message_enabled) {
113 $this->
appendBody($user_lang->txt(
'message') .
': ' .
$mail[
'm_message']);
115 }
117 }
119 '----------------------------------------------------------------------------------------------'
120 );
122 $this->
appendBody($user_lang->txt(
'follow_link_to_read_mails') .
' ');
125 $mailbox_link .=
'/goto.php?target=mail&client_id=' .
CLIENT_ID;
126
131
134
136 $mmail->To($mail_options->getExternalEmailAddresses());
137
139 $mmail->Body($this->
getBody());
140 $mmail->Send();
141 }
142 }
getLanguageText(string $a_keyword)
setRecipients(array $a_rcp)
appendBody(string $a_body)
setSubject(string $a_subject)
initLanguage(int $a_usr_id)
static _getIliasMailerName()
static getSalutation(int $a_usr_id, ?ilLanguage $a_language=null)
static _getInstallationSignature()
static _getAutoGeneratedMessageString(?ilLanguage $lang=null)
static _lookupLogin(int $a_user_id)