mirror of
https://github.com/snipe/snipe-it.git
synced 2025-01-23 19:59:18 -08:00
seperates emails and webhook notifications
This commit is contained in:
parent
dddbf27d78
commit
c40209f500
|
@ -43,30 +43,31 @@ class CheckoutableListener
|
||||||
* Make a checkout acceptance and attach it in the notification
|
* Make a checkout acceptance and attach it in the notification
|
||||||
*/
|
*/
|
||||||
$acceptance = $this->getCheckoutAcceptance($event);
|
$acceptance = $this->getCheckoutAcceptance($event);
|
||||||
|
$notifiables = $this->getNotifiables($event);
|
||||||
|
|
||||||
|
// Send email notifications
|
||||||
try {
|
try {
|
||||||
if (! $event->checkedOutTo->locale) {
|
foreach ($notifiables as $notifiable) {
|
||||||
Notification::locale(Setting::getSettings()->locale)->send(
|
if ($notifiable instanceof User && $notifiable->email != '') {
|
||||||
$this->getNotifiables($event),
|
if (! $event->checkedOutTo->locale){
|
||||||
$this->getCheckoutNotification($event, $acceptance)
|
Notification::locale(Setting::getSettings()->locale)->send($notifiables, $this->getCheckoutNotification($event, $acceptance));
|
||||||
);
|
}
|
||||||
} else {
|
else {
|
||||||
Notification::send(
|
Notification::send($notifiable, $this->getCheckoutNotification($event, $acceptance));
|
||||||
$this->getNotifiables($event),
|
}
|
||||||
$this->getCheckoutNotification($event, $acceptance)
|
}
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Send Webhook notification
|
||||||
if ($this->shouldSendWebhookNotification()) {
|
if ($this->shouldSendWebhookNotification()) {
|
||||||
|
// Slack doesn't include the URL in its messaging format, so this is needed to hit the endpoint
|
||||||
//slack doesn't include the url in its messaging format so this is needed to hit the endpoint
|
if (Setting::getSettings()->webhook_selected === 'slack' || Setting::getSettings()->webhook_selected === 'general') {
|
||||||
|
Notification::route('slack', Setting::getSettings()->webhook_endpoint)
|
||||||
if(Setting::getSettings()->webhook_selected =='slack' || Setting::getSettings()->webhook_selected =='general') {
|
->notify($this->getCheckoutNotification($event));
|
||||||
|
} else {
|
||||||
|
Notification::route(Setting::getSettings()->webhook_selected, Setting::getSettings()->webhook_endpoint)
|
||||||
Notification::route('slack', Setting::getSettings()->webhook_endpoint)
|
->notify($this->getCheckoutNotification($event, $acceptance));
|
||||||
->notify($this->getCheckoutNotification($event));
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} catch (ClientException $e) {
|
} catch (ClientException $e) {
|
||||||
Log::debug("Exception caught during checkout notification: " . $e->getMessage());
|
Log::debug("Exception caught during checkout notification: " . $e->getMessage());
|
||||||
|
@ -75,6 +76,7 @@ class CheckoutableListener
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Notify the user and post to webhook about the checked in checkoutable
|
* Notify the user and post to webhook about the checked in checkoutable
|
||||||
*/
|
*/
|
||||||
|
@ -100,26 +102,29 @@ class CheckoutableListener
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$acceptance = $this->getCheckoutAcceptance($event);
|
||||||
|
$notifiables = $this->getNotifiables($event);
|
||||||
|
// Send email notifications
|
||||||
try {
|
try {
|
||||||
// Use default locale
|
foreach ($notifiables as $notifiable) {
|
||||||
if (! $event->checkedOutTo->locale) {
|
if ($notifiable instanceof User && $notifiable->email != '') {
|
||||||
Notification::locale(Setting::getSettings()->locale)->send(
|
if (! $event->checkedOutTo->locale){
|
||||||
$this->getNotifiables($event),
|
Notification::locale(Setting::getSettings()->locale)->send($notifiables, $this->getCheckoutNotification($event, $acceptance));
|
||||||
$this->getCheckinNotification($event)
|
}
|
||||||
);
|
else {
|
||||||
} else {
|
Notification::send($notifiable, $this->getCheckinNotification($event, $acceptance));
|
||||||
Notification::send(
|
}
|
||||||
$this->getNotifiables($event),
|
}
|
||||||
$this->getCheckinNotification($event)
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
//slack doesn't include the url in its messaging format so this is needed to hit the endpoint
|
// Send Webhook notification
|
||||||
if(Setting::getSettings()->webhook_selected =='slack' || Setting::getSettings()->webhook_selected =='general') {
|
if ($this->shouldSendWebhookNotification()) {
|
||||||
|
// Slack doesn't include the URL in its messaging format, so this is needed to hit the endpoint
|
||||||
if ($this->shouldSendWebhookNotification()) {
|
if (Setting::getSettings()->webhook_selected === 'slack' || Setting::getSettings()->webhook_selected === 'general') {
|
||||||
Notification::route('slack', Setting::getSettings()->webhook_endpoint)
|
Notification::route('slack', Setting::getSettings()->webhook_endpoint)
|
||||||
->notify($this->getCheckinNotification($event));
|
->notify($this->getCheckinNotification($event));
|
||||||
|
} else {
|
||||||
|
Notification::route(Setting::getSettings()->webhook_selected, Setting::getSettings()->webhook_endpoint)
|
||||||
|
->notify($this->getCheckinNotification($event, $acceptance));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue