Browse Source

Update CustomFilterPolicy

Daniel Supernault 2 months ago
parent
commit
9ab1e0c84b
1 changed files with 38 additions and 1 deletions
  1. 38 1
      app/Policies/CustomFilterPolicy.php

+ 38 - 1
app/Policies/CustomFilterPolicy.php

@@ -3,20 +3,57 @@
 namespace App\Policies;
 
 use App\Models\CustomFilter;
-use App\Models\User;
+use App\User;
 
 class CustomFilterPolicy
 {
+    /**
+     * Determine whether the user can view any models.
+     */
+    public function viewAny(User $user): bool
+    {
+        return false;
+    }
+
+    /**
+     * Determine whether the user can view the custom filter.
+     *
+     * @param  \App\User  $user
+     * @param  \App\Models\CustomFilter  $filter
+     * @return bool
+     */
     public function view(User $user, CustomFilter $filter)
     {
         return $user->profile_id === $filter->profile_id;
     }
 
+    /**
+     * Determine whether the user can create models.
+     */
+    public function create(User $user): bool
+    {
+        return CustomFilter::whereProfileId($user->profile_id)->count() <= 100;
+    }
+
+    /**
+     * Determine whether the user can update the custom filter.
+     *
+     * @param  \App\User  $user
+     * @param  \App\Models\CustomFilter  $filter
+     * @return bool
+     */
     public function update(User $user, CustomFilter $filter)
     {
         return $user->profile_id === $filter->profile_id;
     }
 
+    /**
+     * Determine whether the user can delete the custom filter.
+     *
+     * @param  \App\User  $user
+     * @param  \App\Models\CustomFilter  $filter
+     * @return bool
+     */
     public function delete(User $user, CustomFilter $filter)
     {
         return $user->profile_id === $filter->profile_id;