function _pwa_webpush_subscription_update in Progressive Web App 7.2
Parameters
\Minishlink\WebPush\MessageSentReport $report:
Throws
1 call to _pwa_webpush_subscription_update()
- pwa_webpush_send in modules/
pwa_webpush/ pwa_webpush.module - Sends a notification to a list of users.
File
- modules/
pwa_webpush/ pwa_webpush.module, line 285
Code
function _pwa_webpush_subscription_update($report) {
$key = [
'endpoint_sha256' => hash('sha256', $report
->getEndpoint()),
];
$fields = [];
if ($report
->isSuccess()) {
$fields['last_used'] = REQUEST_TIME;
}
if ($report
->isSubscriptionExpired()) {
$fields['expired'] = REQUEST_TIME;
watchdog('webpush', 'Notification subscription expired <pre>@sub</pre>', [
'@sub' => json_encode($report
->jsonSerialize(), JSON_PRETTY_PRINT),
]);
}
if (!empty($fields)) {
db_merge('pwa_webpush_subscription')
->key($key)
->fields($fields)
->execute();
}
}