diff --git a/app/Console/Stubs/Modules/json.stub b/app/Console/Stubs/Modules/json.stub index 4e6177558..ced9ddb44 100644 --- a/app/Console/Stubs/Modules/json.stub +++ b/app/Console/Stubs/Modules/json.stub @@ -5,6 +5,7 @@ "category": "accounting", "active": 1, "providers": [ + "$MODULE_NAMESPACE$\\$STUDLY_NAME$\\Providers\\Event", "$MODULE_NAMESPACE$\\$STUDLY_NAME$\\Providers\\Main" ], "aliases": {}, diff --git a/app/Console/Stubs/Modules/listeners/install.stub b/app/Console/Stubs/Modules/listeners/install.stub new file mode 100644 index 000000000..a7276dd59 --- /dev/null +++ b/app/Console/Stubs/Modules/listeners/install.stub @@ -0,0 +1,36 @@ +alias != $this->alias) { + return; + } + + $this->updatePermissions(); + } + + protected function updatePermissions() + { + // c=create, r=read, u=update, d=delete + $this->attachPermissionsToAdminRoles([ + $this->alias . '-main' => 'c,r,u,d', + ]); + } +} diff --git a/app/Console/Stubs/Modules/providers/event.stub b/app/Console/Stubs/Modules/providers/event.stub new file mode 100644 index 000000000..351f46e75 --- /dev/null +++ b/app/Console/Stubs/Modules/providers/event.stub @@ -0,0 +1,20 @@ + [ + InstallModule::class, + ], + ]; +} diff --git a/app/Console/Stubs/Modules/routes/admin.stub b/app/Console/Stubs/Modules/routes/admin.stub index f272c31f6..2958c30b5 100644 --- a/app/Console/Stubs/Modules/routes/admin.stub +++ b/app/Console/Stubs/Modules/routes/admin.stub @@ -4,7 +4,7 @@ use Illuminate\Support\Facades\Route; Route::group([ 'middleware' => 'admin', - 'namespace' => 'Modules\$STUDLY_NAME$\Http\Controllers' + 'namespace' => '$MODULE_NAMESPACE$\$STUDLY_NAME$\Http\Controllers' ], function () { Route::prefix('$ALIAS$')->group(function() { // Route::get('/', 'Main@index'); diff --git a/app/Console/Stubs/Modules/routes/portal.stub b/app/Console/Stubs/Modules/routes/portal.stub index 8255ef6cd..238ebe11c 100644 --- a/app/Console/Stubs/Modules/routes/portal.stub +++ b/app/Console/Stubs/Modules/routes/portal.stub @@ -5,7 +5,7 @@ use Illuminate\Support\Facades\Route; Route::group([ 'prefix' => 'portal', 'middleware' => 'portal', - 'namespace' => 'Modules\$STUDLY_NAME$\Http\Controllers' + 'namespace' => '$MODULE_NAMESPACE$\$STUDLY_NAME$\Http\Controllers' ], function () { // Route::get('invoices/{invoice}/$ALIAS$', 'Main@show')->name('portal.invoices.$ALIAS$.show'); // Route::post('invoices/{invoice}/$ALIAS$/confirm', 'Main@confirm')->name('portal.invoices.$ALIAS$.confirm'); diff --git a/config/module.php b/config/module.php index 26c54b946..f822699ce 100644 --- a/config/module.php +++ b/config/module.php @@ -24,6 +24,8 @@ return [ 'enabled' => true, 'path' => base_path() . '/app/Console/Stubs/Modules', 'files' => [ + 'listeners/install' => 'Listeners/InstallModule.php', + 'providers/event' => 'Providers/Event.php', 'routes/admin' => 'Routes/admin.php', 'routes/portal' => 'Routes/portal.php', 'lang/general' => 'Resources/lang/en-GB/general.php', @@ -35,8 +37,10 @@ return [ 'package' => 'package.json', ], 'replacements' => [ - 'routes/admin' => ['ALIAS', 'STUDLY_NAME'], - 'routes/portal' => ['ALIAS', 'STUDLY_NAME'], + 'listeners/install' => ['ALIAS', 'STUDLY_NAME', 'MODULE_NAMESPACE'], + 'providers/event' => ['ALIAS', 'STUDLY_NAME', 'MODULE_NAMESPACE'], + 'routes/admin' => ['ALIAS', 'STUDLY_NAME', 'MODULE_NAMESPACE'], + 'routes/portal' => ['ALIAS', 'STUDLY_NAME', 'MODULE_NAMESPACE'], 'webpack' => ['ALIAS'], 'json' => ['ALIAS', 'STUDLY_NAME', 'MODULE_NAMESPACE'], 'lang/general' => ['ALIAS', 'STUDLY_NAME'], diff --git a/modules/OfflinePayments/Providers/Event.php b/modules/OfflinePayments/Providers/Event.php index ef2dce2d9..81c49182b 100644 --- a/modules/OfflinePayments/Providers/Event.php +++ b/modules/OfflinePayments/Providers/Event.php @@ -2,12 +2,12 @@ namespace Modules\OfflinePayments\Providers; -use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider; +use Illuminate\Foundation\Support\Providers\EventServiceProvider as Provider; use Modules\OfflinePayments\Listeners\InstallModule; use Modules\OfflinePayments\Listeners\ShowPaymentMethod; use Modules\OfflinePayments\Listeners\ShowSetting; -class Event extends ServiceProvider +class Event extends Provider { /** * The event listener mappings for the module.