role->value <= $model->role->value; } /** * Determine whether the user can create models. * * @param \App\Models\User $user * @return \Illuminate\Auth\Access\Response|boolean * @phpcs:disable Generic.CodeAnalysis.UnusedFunctionParameter.Found */ public function create(User $user) { // phpcs:enable return Response::allow(); } /** * Determine whether the user can update the model. * * @param \App\Models\User $user * @param \App\Models\User $model * @return \Illuminate\Auth\Access\Response|boolean */ public function update(User $user, User $model) { return $user->role->value <= $model->role->value; } /** * Determine whether the user can delete the model. * * @param \App\Models\User $user * @param \App\Models\User $model * @return \Illuminate\Auth\Access\Response|boolean */ public function delete(User $user, User $model) { if ($user->role->value == $model->role->value) { return Response::deny('Il n\'est pas possible de se supprimer soit même'); } return $user->role->value <= $model->role->value; } /** * Determine whether the user can restore the model. * * @param \App\Models\User $user * @param \App\Models\User $model * @return \Illuminate\Auth\Access\Response|boolean */ public function restore(User $user, User $model) { return $user->role->value <= $model->role->value; } /** * Determine whether the user can permanently delete the model. * * @param \App\Models\User $user * @param \App\Models\User $model * @return \Illuminate\Auth\Access\Response|boolean */ public function forceDelete(User $user, User $model) { if ($user->role->value == $model->role->value) { return Response::deny('Il n\'est pas possible de se supprimer soit même'); } return $user->role->value <= $model->role->value; } }