sending notifications errors via push to user

This commit is contained in:
Ralf Becker 2020-07-26 16:00:38 +02:00
parent 92bb06f724
commit 7c0e53e29e
3 changed files with 19 additions and 9 deletions

View File

@ -1191,19 +1191,25 @@ class calendar_boupdate extends calendar_bo
if(is_array($attachment)) { $notification->set_attachments(array($attachment)); } if(is_array($attachment)) { $notification->set_attachments(array($attachment)); }
$notification->send(); $notification->send();
foreach(notifications::errors(true) as $error) $errors = notifications::errors(true);
{
error_log(__METHOD__."() Error notifying $userid from $senderid: $subject: $error");
}
} }
catch (Exception $exception) { catch (Exception $exception) {
error_log(__METHOD__.' error while notifying user '.$userid.':'.$exception->getMessage()); $errors = [$exception->getMessage()];
continue; continue;
} }
} }
else else
{ {
error_log(__METHOD__.' cannot send any notifications because notifications is not installed'); $errors = [lang('Can not send any notifications because notifications app is not installed!')];
}
foreach($errors as $error)
{
error_log(__METHOD__."() Error notifying $userid from $senderid: $subject: $error");
// send notification errors via push to current user (not session, as alarms send via async job have none!)
(new Api\Json\Push($GLOBALS['egw_info']['user']['account_id']))->message(
lang('Error notifying %1', !is_numeric($userid) ? $userid :
Api\Accounts::id2name($userid, 'account_fullname').' <'.Api\Accounts::id2name($userid, 'account_email').'>').
"\n".$subject."\n".$error, 'error');
} }
} }
} }
@ -1272,7 +1278,7 @@ class calendar_boupdate extends calendar_bo
Api\Translation::add_app('calendar'); Api\Translation::add_app('calendar');
$GLOBALS['egw_info']['flags']['currentapp'] = 'calendar'; $GLOBALS['egw_info']['flags']['currentapp'] = 'calendar';
$ret = $this->send_update(MSG_ALARM, $to_notify, $event, False, $alarm['owner'], $alarm); $ret = $this->_send_update(MSG_ALARM, $to_notify, $event, False, $alarm['owner'], $alarm);
// create a new alarm for recuring events for the next event, if one exists // create a new alarm for recuring events for the next event, if one exists
if ($event['recur_type'] != MCAL_RECUR_NONE && ($event = $this->read($alarm['cal_id'],$event_time_user+1))) if ($event['recur_type'] != MCAL_RECUR_NONE && ($event = $this->read($alarm['cal_id'],$event_time_user+1)))

View File

@ -91,6 +91,7 @@ calendar menu calendar de Kalender Menü
calendar preferences calendar de Kalender Einstellungen calendar preferences calendar de Kalender Einstellungen
calendar settings admin de Kalender Einstellungen calendar settings admin de Kalender Einstellungen
calendar-fieldname calendar de Kalender Feldname calendar-fieldname calendar de Kalender Feldname
can not send any notifications because notifications app is not installed! calendar de Konnte keine Benachrichtigungen versenden da die Benachrichtigungen Anwendung nicht installiert ist!
can't add alarms in the past !!! calendar de Kann keine Alarme in der Vergangenheit setzen !!! can't add alarms in the past !!! calendar de Kann keine Alarme in der Vergangenheit setzen !!!
can't aquire lock! calendar de Kann Termin nicht sperren! can't aquire lock! calendar de Kann Termin nicht sperren!
canceled calendar de Abgesagt canceled calendar de Abgesagt
@ -205,6 +206,7 @@ enddate / -time of the meeting, eg. for more then one day calendar de Enddatum u
enddate of the export calendar de Enddatum des Exports enddate of the export calendar de Enddatum des Exports
ends calendar de endet ends calendar de endet
error adding the alarm calendar de Fehler beim Zufügen des Alarms error adding the alarm calendar de Fehler beim Zufügen des Alarms
error notifying %1 calendar de Fehler beim Benachrichtigen von %1
error saving the event! calendar de Fehler beim Speichern des Termins! error saving the event! calendar de Fehler beim Speichern des Termins!
error: can't delete original series! calendar de Fehler beim Löschen der bestehenden Serie error: can't delete original series! calendar de Fehler beim Löschen der bestehenden Serie
error: duration of event longer then recurrence interval! calendar de Fehler: Termindauer ist länger als das Intervall der Wiederholung! error: duration of event longer then recurrence interval! calendar de Fehler: Termindauer ist länger als das Intervall der Wiederholung!
@ -373,7 +375,7 @@ name of current user, all other contact fields are valid too calendar de Name de
name of the day of the week (ex: monday) calendar de Name des Wochentags (z.B. Montag) name of the day of the week (ex: monday) calendar de Name des Wochentags (z.B. Montag)
name of the week (ex: monday), available for the first entry inside each day of week or daily table inside the selected range. calendar de Name der Woche (ab Montag), verfügbar für den ersten Eintrag für jeden Tag der Woche oder für die tägliche Tabelle innerhalb des ausgewählten Zeitraums. name of the week (ex: monday), available for the first entry inside each day of week or daily table inside the selected range. calendar de Name der Woche (ab Montag), verfügbar für den ersten Eintrag für jeden Tag der Woche oder für die tägliche Tabelle innerhalb des ausgewählten Zeitraums.
needs action calendar de Zu erledigen needs action calendar de Zu erledigen
never notify externals (non-users) about events I create calendar de Benachrichtige niemals Externe (Nicht-Benutzer) über Termin, die ich erstelle never notify externals (non-users) about events i create calendar de Benachrichtige niemals Externe (Nicht-Benutzer) über Termin, die ich erstelle
new calendar de Neu new calendar de Neu
new event category calendar de Neue Termin-Kategorie new event category calendar de Neue Termin-Kategorie
new event participants calendar de Teilnehmerauswahl für neue Termine new event participants calendar de Teilnehmerauswahl für neue Termine

View File

@ -91,6 +91,7 @@ calendar menu calendar en Calendar menu
calendar preferences calendar en Calendar preferences calendar preferences calendar en Calendar preferences
calendar settings admin en Calendar settings calendar settings admin en Calendar settings
calendar-fieldname calendar en Calendar field name calendar-fieldname calendar en Calendar field name
can not send any notifications because notifications app is not installed! calendar en Can not send any notifications because notifications app is not installed!
can't add alarms in the past !!! calendar en Can't add alarms in the past !!! can't add alarms in the past !!! calendar en Can't add alarms in the past !!!
can't aquire lock! calendar en Can't aquire lock! can't aquire lock! calendar en Can't aquire lock!
canceled calendar en Canceled canceled calendar en Canceled
@ -205,6 +206,7 @@ enddate / -time of the meeting, eg. for more then one day calendar en End date /
enddate of the export calendar en End date of the export enddate of the export calendar en End date of the export
ends calendar en Ends ends calendar en Ends
error adding the alarm calendar en Error adding the alarm error adding the alarm calendar en Error adding the alarm
error notifying %1 calendar en Error notifying %1
error saving the event! calendar en Error saving the event! error saving the event! calendar en Error saving the event!
error: can't delete original series! calendar en Error: Can't delete original series! error: can't delete original series! calendar en Error: Can't delete original series!
error: duration of event longer then recurrence interval! calendar en Error: Duration of event longer than recurrence interval! error: duration of event longer then recurrence interval! calendar en Error: Duration of event longer than recurrence interval!
@ -373,7 +375,7 @@ name of current user, all other contact fields are valid too calendar en Name of
name of the day of the week (ex: monday) calendar en Name of the day of the week (ex: Monday) name of the day of the week (ex: monday) calendar en Name of the day of the week (ex: Monday)
name of the week (ex: monday), available for the first entry inside each day of week or daily table inside the selected range. calendar en Name of the week, eg: Monday, available for the first entry inside each day of week or daily table inside the selected range. name of the week (ex: monday), available for the first entry inside each day of week or daily table inside the selected range. calendar en Name of the week, eg: Monday, available for the first entry inside each day of week or daily table inside the selected range.
needs action calendar en Needs action needs action calendar en Needs action
never notify externals (non-users) about events I create calendar en Never notify externals (non-users) about events I create never notify externals (non-users) about events i create calendar en Never notify externals (non-users) about events I create
new calendar en New new calendar en New
new event category calendar en New event category new event category calendar en New event category
new event participants calendar en New event participants new event participants calendar en New event participants