Skip to main content

Black Friday 2025! Only until December 1st: coupon FRIDAY25 for 40% off Yearly/Lifetime membership!

Read more here

pelican-dev/panel

1722 stars
2 code files
View pelican-dev/panel on GitHub

app/Policies/DefaultPolicies.php

Open in GitHub
use App\Models\User;
use Illuminate\Database\Eloquent\Model;
 
trait DefaultPolicies
{
public function viewAny(User $user): bool
{
return $user->can('viewList ' . $this->modelName);
}
 
public function view(User $user, Model $model): bool
{
return $user->can('view ' . $this->modelName, $model);
}
 
public function create(User $user): bool
{
return $user->can('create ' . $this->modelName);
}
 
public function update(User $user, Model $model): bool
{
return $user->can('update ' . $this->modelName, $model);
}
 
public function delete(User $user, Model $model): bool
{
return $user->can('delete ' . $this->modelName, $model);
}
 
public function deleteAny(User $user): bool
{
return $user->can('delete ' . $this->modelName);
}
 
public function replicate(User $user, Model $model): bool
{
return $user->can('create ' . $this->modelName);
}
}

app/Policies/UserPolicy.php

Open in GitHub
use App\Models\User;
use Illuminate\Database\Eloquent\Model;
 
class UserPolicy
{
use DefaultPolicies {
update as defaultUpdate;
delete as defaultDelete;
}
 
protected string $modelName = 'user';
 
public function update(User $user, Model $model): bool
{
return $user->canTarget($model) && $this->defaultUpdate($user, $model);
}
 
public function delete(User $user, Model $model): bool
{
return $user->canTarget($model) && $this->defaultDelete($user, $model);
}
}

We'd Love Your Feedback

Tell us what you like or what we can improve

Feel free to share anything you like or dislike about this page or the platform in general.