From fe109eb746fe4abe26690313028415c381d57f71 Mon Sep 17 00:00:00 2001 From: Nurmuhammet Allanov Date: Mon, 25 Nov 2024 22:27:25 +0500 Subject: [PATCH] wip --- .../Item/NovaSberPaymentOrderItemAuth.php | 6 -- .../Easy/Permission/NovaEasyPermission.php | 69 +++++++++++++++++++ app/Nova/Resources/NovaVisaMasterSetting.php | 3 +- 3 files changed, 71 insertions(+), 7 deletions(-) create mode 100644 app/Nova/Easy/Permission/NovaEasyPermission.php diff --git a/app/Modules/SberPaymentOrder/Nova/Resources/Item/NovaSberPaymentOrderItemAuth.php b/app/Modules/SberPaymentOrder/Nova/Resources/Item/NovaSberPaymentOrderItemAuth.php index 6a1b1a5..6b660e5 100644 --- a/app/Modules/SberPaymentOrder/Nova/Resources/Item/NovaSberPaymentOrderItemAuth.php +++ b/app/Modules/SberPaymentOrder/Nova/Resources/Item/NovaSberPaymentOrderItemAuth.php @@ -16,12 +16,6 @@ trait NovaSberPaymentOrderItemAuth /** Create button */ public static function authorizedToCreate(Request $request) { - $user = auth()->user(); - - if ($user->isMe()) { - return true; - } - return false; } diff --git a/app/Nova/Easy/Permission/NovaEasyPermission.php b/app/Nova/Easy/Permission/NovaEasyPermission.php new file mode 100644 index 0000000..25700ff --- /dev/null +++ b/app/Nova/Easy/Permission/NovaEasyPermission.php @@ -0,0 +1,69 @@ +user()->isMe(), AuthorizationException::class); + } + + /** Edit button */ + public function authorizedToUpdate(Request $request): bool + { + $user = auth()->user(); + + if ($user->isMe()) { + return true; + } + + return false; + } + + /** Update */ + public function authorizeToUpdate(Request $request): void + { + $user = auth()->user(); + + if ($user->isMe()) { + return; + } + + throw new AuthorizationException; + } + + /** Delete button */ + public function authorizedToDelete(Request $request) + { + $user = auth()->user(); + + if ($user->isMe()) { + return true; + } + + return false; + } + + /** Force delete */ + public function authorizedToForceDelete(Request $request) + { + return auth()->user()->isMe() ? true : false; + } +} diff --git a/app/Nova/Resources/NovaVisaMasterSetting.php b/app/Nova/Resources/NovaVisaMasterSetting.php index 4ea8ec9..f990c1d 100644 --- a/app/Nova/Resources/NovaVisaMasterSetting.php +++ b/app/Nova/Resources/NovaVisaMasterSetting.php @@ -3,6 +3,7 @@ namespace App\Nova\Resources; use App\Modules\SberPaymentOrder\Nova\Resources\Item\NovaSberPaymentOrderItemAuth; +use App\Nova\Easy\Permission\NovaEasyPermission; use App\Nova\Resource; use Laravel\Nova\Fields\ID; use Laravel\Nova\Fields\Text; @@ -10,7 +11,7 @@ use Laravel\Nova\Http\Requests\NovaRequest; class NovaVisaMasterSetting extends Resource { - use NovaSberPaymentOrderItemAuth; + use NovaEasyPermission; /** * The model the resource corresponds to.