use App\Mail\ArticleApprovedEmail;
use App\Models\Article;
use App\Models\User;
use Illuminate\Notifications\Notification;
final class ArticleApprovedNotification extends Notification
{
public $article;
public function __construct(Article $article)
{
$this->article = $article;
}
public function via(User $user)
{
return ['mail', 'database'];
}
public function toMail(User $user)
{
return (new ArticleApprovedEmail($this->article))
->to($user->emailAddress(), $user->name());
}
public function toDatabase(User $user)
{
return [
'type' => 'article_approved',
'article_title' => $this->article->title(),
'article_slug' => $this->article->slug(),
];
}
}