From 4f4d76cf435f53af5a9edeeebab48835ded01d15 Mon Sep 17 00:00:00 2001 From: cuneytsenturk Date: Sat, 11 Aug 2018 20:22:37 +0300 Subject: [PATCH] close #449 Fixed: Can't access admin if role doesn't have Settings permission --- .../Events/Handlers/OfflinePaymentAdminMenu.php | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/modules/OfflinePayment/Events/Handlers/OfflinePaymentAdminMenu.php b/modules/OfflinePayment/Events/Handlers/OfflinePaymentAdminMenu.php index c5516bafe..3ad2fb310 100644 --- a/modules/OfflinePayment/Events/Handlers/OfflinePaymentAdminMenu.php +++ b/modules/OfflinePayment/Events/Handlers/OfflinePaymentAdminMenu.php @@ -3,6 +3,7 @@ namespace Modules\OfflinePayment\Events\Handlers; use App\Events\AdminMenuCreated; +use Auth; class OfflinePaymentAdminMenu { @@ -14,9 +15,14 @@ class OfflinePaymentAdminMenu */ public function handle(AdminMenuCreated $event) { - // Add child to existing item - $item = $event->menu->whereTitle(trans_choice('general.settings', 2)); + $user = Auth::user(); - $item->url('apps/offlinepayment/settings', trans('offlinepayment::offlinepayment.offlinepayment'), 4, ['icon' => 'fa fa-angle-double-right']); + // Settings + if ($user->can(['read-settings-settings', 'read-settings-categories', 'read-settings-currencies', 'read-settings-taxes'])) { + // Add child to existing item + $item = $event->menu->whereTitle(trans_choice('general.settings', 2)); + + $item->url('apps/offlinepayment/settings', trans('offlinepayment::offlinepayment.offlinepayment'), 4, ['icon' => 'fa fa-angle-double-right']); + } } }