Skip to content

Commit 2362cb5

Browse files
committed
refactor to getNotifiables
1 parent 93494ac commit 2362cb5

File tree

1 file changed

+15
-24
lines changed

1 file changed

+15
-24
lines changed

app/Listeners/CheckoutableListener.php

Lines changed: 15 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -61,24 +61,12 @@ public function onCheckedOut($event)
6161
$adminCcEmailsArray = array_map('trim', explode(',', $adminCcEmail));
6262
}
6363
$ccEmails = array_filter($adminCcEmailsArray);
64-
6564
$mailable = $this->getCheckoutMailType($event, $acceptance);
66-
67-
if($event->checkedOutTo instanceof Asset){
68-
$event->checkedOutTo->load('assignedTo');
69-
$notifiable = $event->checkedOutTo->assignedto?->email ?? '';
70-
}
71-
else if($event->checkedOutTo instanceof Location) {
72-
$notifiable = $event->checkedOutTo->manager?->email ?? '';
73-
}
74-
else{
75-
$notifiable = $event->checkedOutTo->email;
76-
}
65+
$notifiable = $this->getNotifiables($event);
7766

7867
if (!$event->checkedOutTo->locale){
7968
$mailable->locale($event->checkedOutTo->locale);
8069
}
81-
8270
// Send email notifications
8371
try {
8472
/**
@@ -156,18 +144,8 @@ public function onCheckedIn($event)
156144
}
157145
$ccEmails = array_filter($adminCcEmailsArray);
158146
$mailable = $this->getCheckinMailType($event);
147+
$notifiable = $this->getNotifiables($event);
159148

160-
161-
if($event->checkedOutTo instanceof Asset){
162-
$event->checkedOutTo->load('assignedTo');
163-
$notifiable = $event->checkedOutTo->assignedto?->email ?? '';
164-
}
165-
else if($event->checkedOutTo instanceof Location) {
166-
$notifiable = $event->checkedOutTo->manager?->email ?? '';
167-
}
168-
else{
169-
$notifiable = $event->checkedOutTo->email;
170-
}
171149
if (!$event->checkedOutTo->locale){
172150
$mailable->locale($event->checkedOutTo->locale);
173151
}
@@ -311,6 +289,19 @@ private function getCheckinMailType($event){
311289
return new $mailable($event->checkoutable, $event->checkedOutTo, $event->checkedInBy, $event->note);
312290

313291
}
292+
private function getNotifiables($event){
293+
294+
if($event->checkedOutTo instanceof Asset){
295+
$event->checkedOutTo->load('assignedTo');
296+
return $event->checkedOutTo->assignedto?->email ?? '';
297+
}
298+
else if($event->checkedOutTo instanceof Location) {
299+
return $event->checkedOutTo->manager?->email ?? '';
300+
}
301+
else{
302+
return $event->checkedOutTo->email;
303+
}
304+
}
314305

315306
/**
316307
* Register the listeners for the subscriber.

0 commit comments

Comments
 (0)