Files
eatvio-infra/app/Policies/BlogPostPolicy.php

20 lines
439 B
PHP

<?php
namespace App\Policies;
use App\Models\User;
use App\Models\BlogPost;
class BlogPostPolicy
{
public function edit(User $user, BlogPost $blogPost): bool
{
return $this->isAuthorPlan($user, $blogPost) || $user->hasRole('admin') || $user->hasRole('moderator');
}
private function isAuthorPlan(User $user, BlogPost $blogPost): bool
{
return $user->id === $blogPost->author()->first()->id;
}
}