<?php namespace BookStack\Activity\Notifications\Messages; use BookStack\Activity\Models\Comment; use BookStack\Activity\Notifications\MessageParts\ListMessageLine; use BookStack\Entities\Models\Page; use Illuminate\Notifications\Messages\MailMessage; class CommentCreationNotification extends BaseActivityNotification { public function toMail(mixed $notifiable): MailMessage { /** @var Comment $comment */ $comment = $this->detail; /** @var Page $page */ $page = $comment->entity; return (new MailMessage()) ->subject(trans('notifications.new_comment_subject', ['pageName' => $page->getShortName()])) ->line(trans('notifications.new_comment_intro', ['appName' => setting('app-name')])) ->line(new ListMessageLine([ trans('notifications.detail_page_name') => $page->name, trans('notifications.detail_commenter') => $this->user->name, trans('notifications.detail_comment') => strip_tags($comment->html), ])) ->action(trans('notifications.action_view_comment'), $page->getUrl('#comment' . $comment->local_id)) ->line($this->buildReasonFooterLine()); } }