From 5beaf94f3a843a9c1f78e1fde3dcabdd6d815c7c Mon Sep 17 00:00:00 2001 From: Antoine Le Gonidec Date: Tue, 16 Jul 2024 16:54:04 +0200 Subject: [PATCH] Add a new menu entry This is only a placeholder for now, it does not send to a real page yet. --- .../Controllers/CustomersGroupsController.php | 15 +++++++++ Http/routes.php | 2 +- .../MMFCustomersGroupsServiceProvider.php | 31 +++++++++++++++++++ Resources/views/partials/menu.blade.php | 8 +++++ 4 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 Http/Controllers/CustomersGroupsController.php create mode 100644 Resources/views/partials/menu.blade.php diff --git a/Http/Controllers/CustomersGroupsController.php b/Http/Controllers/CustomersGroupsController.php new file mode 100644 index 0000000..f0e06d6 --- /dev/null +++ b/Http/Controllers/CustomersGroupsController.php @@ -0,0 +1,15 @@ + + */ + +namespace Modules\MMFCustomersGroups\Http\Controllers; + +use Illuminate\Routing\Controller; + +class CustomersGroupsController extends Controller { + public function list() { + // TODO + } +} diff --git a/Http/routes.php b/Http/routes.php index be13fbb..2dc0795 100644 --- a/Http/routes.php +++ b/Http/routes.php @@ -13,6 +13,6 @@ Route::group( 'namespace' => 'Modules\MMFCustomersGroups\Http\Controllers' ], function() { - // TODO + Route::get('/groups/list', ['uses' => CustomersGroupsController::class . '@list', 'laroute' => true])->name('groups.list'); } ); diff --git a/Providers/MMFCustomersGroupsServiceProvider.php b/Providers/MMFCustomersGroupsServiceProvider.php index c3eb368..93251ad 100644 --- a/Providers/MMFCustomersGroupsServiceProvider.php +++ b/Providers/MMFCustomersGroupsServiceProvider.php @@ -23,7 +23,9 @@ class MMFCustomersGroupsServiceProvider extends ServiceProvider { */ public function boot() { $this->registerConfig(); + $this->registerViews(); $this->loadMigrationsFrom(__DIR__ . '/../Database/Migrations'); + $this->hooks(); } /** @@ -48,4 +50,33 @@ class MMFCustomersGroupsServiceProvider extends ServiceProvider { public function provides() { return []; } + + /** + * Register views. + * + * @return void + */ + public function registerViews() { + $viewPath = resource_path('views/modules/mmfcustomersgroups'); + + $sourcePath = __DIR__.'/../Resources/views'; + + $this->publishes([ + $sourcePath => $viewPath, + ],'views'); + + $this->loadViewsFrom(array_merge(array_map(function ($path) { + return $path . '/modules/mmfcustomersgroups'; + }, \Config::get('view.paths')), [$sourcePath]), 'mmfcustomersgroups'); + } + + /** + * Module hooks. + */ + public function hooks() { + // Add a menu entry to manage the customer groups. + \Eventy::addAction('menu.manage.after_mailboxes', function() { + echo \View::make('mmfcustomersgroups::partials/menu', [])->render(); + }); + } } diff --git a/Resources/views/partials/menu.blade.php b/Resources/views/partials/menu.blade.php new file mode 100644 index 0000000..31f7471 --- /dev/null +++ b/Resources/views/partials/menu.blade.php @@ -0,0 +1,8 @@ + + */ +?> + +
  • {{ __('Customers groups') }}