From d1a8cdbd432ef62ca7006e979446d68877aa420e Mon Sep 17 00:00:00 2001 From: suraj kashyap Date: Tue, 20 Aug 2024 19:17:13 +0530 Subject: [PATCH] acl. --- packages/Webkul/Admin/src/Config/acl.php | 8 ++-- .../src/DataGrids/Settings/TagDataGrid.php | 40 +++++++++------- .../DataGrids/Settings/WebhookDataGrid.php | 4 +- .../views/settings/web-forms/index.blade.php | 28 ++++++----- .../WebForm/src/DataGrids/WebFormDataGrid.php | 48 +++++++++++-------- 5 files changed, 71 insertions(+), 57 deletions(-) diff --git a/packages/Webkul/Admin/src/Config/acl.php b/packages/Webkul/Admin/src/Config/acl.php index d5fe9fdbd..d7b9a7346 100644 --- a/packages/Webkul/Admin/src/Config/acl.php +++ b/packages/Webkul/Admin/src/Config/acl.php @@ -408,22 +408,22 @@ 'sort' => 3, ], [ - 'key' => 'settings.automation.webhook', + 'key' => 'settings.automation.webhooks', 'name' => 'admin::app.acl.webhook', 'route' => 'admin.settings.webhooks.index', 'sort' => 1, ], [ - 'key' => 'settings.automation.webhook.create', + 'key' => 'settings.automation.webhooks.create', 'name' => 'admin::app.acl.create', 'route' => ['admin.settings.webhooks.create', 'admin.settings.webhooks.store'], 'sort' => 1, ], [ - 'key' => 'settings.automation.webhook.edit', + 'key' => 'settings.automation.webhooks.edit', 'name' => 'admin::app.acl.edit', 'route' => ['admin.settings.webhooks.edit', 'admin.settings.webhooks.update'], 'sort' => 2, ], [ - 'key' => 'settings.automation.webhook.delete', + 'key' => 'settings.automation.webhooks.delete', 'name' => 'admin::app.acl.delete', 'route' => 'admin.settings.webhooks.delete', 'sort' => 3, diff --git a/packages/Webkul/Admin/src/DataGrids/Settings/TagDataGrid.php b/packages/Webkul/Admin/src/DataGrids/Settings/TagDataGrid.php index e33abc35e..4a89f0ef7 100644 --- a/packages/Webkul/Admin/src/DataGrids/Settings/TagDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/Settings/TagDataGrid.php @@ -98,25 +98,29 @@ public function prepareColumns(): void */ public function prepareActions(): void { - $this->addAction([ - 'index' => 'edit', - 'icon' => 'icon-edit', - 'title' => trans('admin::app.settings.tags.index.datagrid.edit'), - 'method' => 'GET', - 'url' => function ($row) { - return route('admin.settings.tags.edit', $row->id); - }, - ]); + if (bouncer()->hasPermission('settings.other_settings.tags.edit')) { + $this->addAction([ + 'index' => 'edit', + 'icon' => 'icon-edit', + 'title' => trans('admin::app.settings.tags.index.datagrid.edit'), + 'method' => 'GET', + 'url' => function ($row) { + return route('admin.settings.tags.edit', $row->id); + }, + ]); + } - $this->addAction([ - 'index' => 'delete', - 'icon' => 'icon-delete', - 'title' => trans('admin::app.settings.tags.index.datagrid.delete'), - 'method' => 'DELETE', - 'url' => function ($row) { - return route('admin.settings.tags.delete', $row->id); - }, - ]); + if (bouncer()->hasPermission('settings.other_settings.tags.delete')) { + $this->addAction([ + 'index' => 'delete', + 'icon' => 'icon-delete', + 'title' => trans('admin::app.settings.tags.index.datagrid.delete'), + 'method' => 'DELETE', + 'url' => function ($row) { + return route('admin.settings.tags.delete', $row->id); + }, + ]); + } } /** diff --git a/packages/Webkul/Admin/src/DataGrids/Settings/WebhookDataGrid.php b/packages/Webkul/Admin/src/DataGrids/Settings/WebhookDataGrid.php index 8d2a67d9b..233f64047 100644 --- a/packages/Webkul/Admin/src/DataGrids/Settings/WebhookDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/Settings/WebhookDataGrid.php @@ -73,7 +73,7 @@ public function prepareColumns(): void */ public function prepareActions(): void { - if (bouncer()->hasPermission('admin.settings.webhooks.edit')) { + if (bouncer()->hasPermission('settings.automation.webhooks.edit')) { $this->addAction([ 'index' => 'edit', 'icon' => 'icon-edit', @@ -83,7 +83,7 @@ public function prepareActions(): void ]); } - if (bouncer()->hasPermission('admin.settings.webhooks.delete')) { + if (bouncer()->hasPermission('settings.automation.webhooks.delete')) { $this->addAction([ 'index' => 'delete', 'icon' => 'icon-delete', diff --git a/packages/Webkul/Admin/src/Resources/views/settings/web-forms/index.blade.php b/packages/Webkul/Admin/src/Resources/views/settings/web-forms/index.blade.php index 1efd5b9a8..7ecadf34d 100644 --- a/packages/Webkul/Admin/src/Resources/views/settings/web-forms/index.blade.php +++ b/packages/Webkul/Admin/src/Resources/views/settings/web-forms/index.blade.php @@ -19,12 +19,14 @@
- + @if (bouncer()->hasPermission('admin.settings.web_forms.create')) + + @endif
@@ -55,12 +57,14 @@ class="primary-button"
{!! view_render_event('krayin.admin.settings.web_forms.index.create_button.before') !!} - - @lang('admin::app.settings.webforms.index.create-btn') - + @if (bouncer()->hasPermission('admin.settings.web_forms.create')) + + @lang('admin::app.settings.webforms.index.create-btn') + + @endif {!! view_render_event('krayin.admin.settings.web_forms.index.create_button.after') !!}
diff --git a/packages/Webkul/WebForm/src/DataGrids/WebFormDataGrid.php b/packages/Webkul/WebForm/src/DataGrids/WebFormDataGrid.php index 2b33dd860..05a182614 100644 --- a/packages/Webkul/WebForm/src/DataGrids/WebFormDataGrid.php +++ b/packages/Webkul/WebForm/src/DataGrids/WebFormDataGrid.php @@ -52,28 +52,34 @@ public function prepareColumns(): void */ public function prepareActions(): void { - $this->addAction([ - 'index' => 'view', - 'icon' => 'icon-eye', - 'title' => trans('admin::app.settings.webforms.index.datagrid.view'), - 'method' => 'GET', - 'url' => fn ($row) => route('admin.settings.web_forms.view', $row->id), - ]); + if (bouncer()->hasPermission('settings.other_settings.web_forms.view')) { + $this->addAction([ + 'index' => 'view', + 'icon' => 'icon-eye', + 'title' => trans('admin::app.settings.webforms.index.datagrid.view'), + 'method' => 'GET', + 'url' => fn ($row) => route('admin.settings.web_forms.view', $row->id), + ]); + } - $this->addAction([ - 'index' => 'edit', - 'icon' => 'icon-edit', - 'title' => trans('admin::app.settings.webforms.index.datagrid.edit'), - 'method' => 'GET', - 'url' => fn ($row) => route('admin.settings.web_forms.edit', $row->id), - ]); + if (bouncer()->hasPermission('settings.other_settings.web_forms.edit')) { + $this->addAction([ + 'index' => 'edit', + 'icon' => 'icon-edit', + 'title' => trans('admin::app.settings.webforms.index.datagrid.edit'), + 'method' => 'GET', + 'url' => fn ($row) => route('admin.settings.web_forms.edit', $row->id), + ]); + } - $this->addAction([ - 'index' => 'delete', - 'icon' => 'icon-delete', - 'title' => trans('admin::app.settings.webforms.index.datagrid.delete'), - 'method' => 'DELETE', - 'url' => fn ($row) => route('admin.settings.web_forms.delete', $row->id), - ]); + if (bouncer()->hasPermission('settings.other_settings.web_forms.delete')) { + $this->addAction([ + 'index' => 'delete', + 'icon' => 'icon-delete', + 'title' => trans('admin::app.settings.webforms.index.datagrid.delete'), + 'method' => 'DELETE', + 'url' => fn ($row) => route('admin.settings.web_forms.delete', $row->id), + ]); + } } }