From 95bcb5032975330fcde144be216de89a5460406d Mon Sep 17 00:00:00 2001 From: Daniel Supernault Date: Sun, 26 May 2019 23:04:43 -0600 Subject: [PATCH] Update NotificationTransformer --- .../Api/NotificationTransformer.php | 22 +++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/app/Transformer/Api/NotificationTransformer.php b/app/Transformer/Api/NotificationTransformer.php index 5a9e4cf40..0408eeea8 100644 --- a/app/Transformer/Api/NotificationTransformer.php +++ b/app/Transformer/Api/NotificationTransformer.php @@ -2,7 +2,10 @@ namespace App\Transformer\Api; -use App\Notification; +use App\{ + Notification, + Status +}; use League\Fractal; class NotificationTransformer extends Fractal\TransformerAbstract @@ -10,6 +13,7 @@ class NotificationTransformer extends Fractal\TransformerAbstract protected $defaultIncludes = [ 'account', 'status', + 'relationship' ]; public function transform(Notification $notification) @@ -30,9 +34,14 @@ class NotificationTransformer extends Fractal\TransformerAbstract public function includeStatus(Notification $notification) { - $item = $notification->item; - if(is_object($item) && get_class($item) === 'App\Status') { - return $this->item($item, new StatusTransformer()); + $item = $notification; + if($item->item_id && $item->item_type == 'App\Status') { + $status = Status::with('media')->find($item->item_id); + if($status) { + return $this->item($status, new StatusTransformer()); + } else { + return null; + } } else { return null; } @@ -50,4 +59,9 @@ class NotificationTransformer extends Fractal\TransformerAbstract ]; return $verbs[$verb]; } + + public function includeRelationship(Notification $notification) + { + return $this->item($notification->actor, new RelationshipTransformer()); + } }