X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/fef433a9cb1ae8c0daf2444e16e590cd9df114aa..refs/pull/5681/head:/app/Activity/Notifications/Messages/PageUpdateNotification.php diff --git a/app/Activity/Notifications/Messages/PageUpdateNotification.php b/app/Activity/Notifications/Messages/PageUpdateNotification.php index c4a6de0bd..80ee378cc 100644 --- a/app/Activity/Notifications/Messages/PageUpdateNotification.php +++ b/app/Activity/Notifications/Messages/PageUpdateNotification.php @@ -2,26 +2,33 @@ namespace BookStack\Activity\Notifications\Messages; +use BookStack\Activity\Notifications\MessageParts\EntityLinkMessageLine; use BookStack\Activity\Notifications\MessageParts\ListMessageLine; use BookStack\Entities\Models\Page; +use BookStack\Users\Models\User; use Illuminate\Notifications\Messages\MailMessage; class PageUpdateNotification extends BaseActivityNotification { - public function toMail(mixed $notifiable): MailMessage + public function toMail(User $notifiable): MailMessage { /** @var Page $page */ $page = $this->detail; - return (new MailMessage()) - ->subject(trans('notifications.updated_page_subject', ['pageName' => $page->getShortName()])) - ->line(trans('notifications.updated_page_intro', ['appName' => setting('app-name')])) - ->line(new ListMessageLine([ - trans('notifications.detail_page_name') => $page->name, - trans('notifications.detail_updated_by') => $this->user->name, - ])) - ->line(trans('notifications.updated_page_debounce')) - ->action(trans('notifications.action_view_page'), $page->getUrl()) - ->line($this->buildReasonFooterLine()); + $locale = $notifiable->getLocale(); + + $listLines = array_filter([ + $locale->trans('notifications.detail_page_name') => new EntityLinkMessageLine($page), + $locale->trans('notifications.detail_page_path') => $this->buildPagePathLine($page, $notifiable), + $locale->trans('notifications.detail_updated_by') => $this->user->name, + ]); + + return $this->newMailMessage($locale) + ->subject($locale->trans('notifications.updated_page_subject', ['pageName' => $page->getShortName()])) + ->line($locale->trans('notifications.updated_page_intro', ['appName' => setting('app-name')])) + ->line(new ListMessageLine($listLines)) + ->line($locale->trans('notifications.updated_page_debounce')) + ->action($locale->trans('notifications.action_view_page'), $page->getUrl()) + ->line($this->buildReasonFooterLine($locale)); } }