added event and listener stubs

This commit is contained in:
denisdulici 2020-04-03 14:36:32 +03:00
parent 04f2872e62
commit 026b649411
7 changed files with 67 additions and 6 deletions

View File

@ -5,6 +5,7 @@
"category": "accounting", "category": "accounting",
"active": 1, "active": 1,
"providers": [ "providers": [
"$MODULE_NAMESPACE$\\$STUDLY_NAME$\\Providers\\Event",
"$MODULE_NAMESPACE$\\$STUDLY_NAME$\\Providers\\Main" "$MODULE_NAMESPACE$\\$STUDLY_NAME$\\Providers\\Main"
], ],
"aliases": {}, "aliases": {},

View File

@ -0,0 +1,36 @@
<?php
namespace $MODULE_NAMESPACE$\$STUDLY_NAME$\Listeners;
use App\Events\Module\Installed as Event;
use App\Traits\Permissions;
class InstallModule
{
use Permissions;
public $alias = '$ALIAS$';
/**
* Handle the event.
*
* @param Event $event
* @return void
*/
public function handle(Event $event)
{
if ($event->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',
]);
}
}

View File

@ -0,0 +1,20 @@
<?php
namespace $MODULE_NAMESPACE$\$STUDLY_NAME$\Providers;
use Illuminate\Foundation\Support\Providers\EventServiceProvider as Provider;
use $MODULE_NAMESPACE$\$STUDLY_NAME$\Listeners\InstallModule;
class Event extends Provider
{
/**
* The event listener mappings for the module.
*
* @var array
*/
protected $listen = [
\App\Events\Module\Installed::class => [
InstallModule::class,
],
];
}

View File

@ -4,7 +4,7 @@ use Illuminate\Support\Facades\Route;
Route::group([ Route::group([
'middleware' => 'admin', 'middleware' => 'admin',
'namespace' => 'Modules\$STUDLY_NAME$\Http\Controllers' 'namespace' => '$MODULE_NAMESPACE$\$STUDLY_NAME$\Http\Controllers'
], function () { ], function () {
Route::prefix('$ALIAS$')->group(function() { Route::prefix('$ALIAS$')->group(function() {
// Route::get('/', 'Main@index'); // Route::get('/', 'Main@index');

View File

@ -5,7 +5,7 @@ use Illuminate\Support\Facades\Route;
Route::group([ Route::group([
'prefix' => 'portal', 'prefix' => 'portal',
'middleware' => 'portal', 'middleware' => 'portal',
'namespace' => 'Modules\$STUDLY_NAME$\Http\Controllers' 'namespace' => '$MODULE_NAMESPACE$\$STUDLY_NAME$\Http\Controllers'
], function () { ], function () {
// Route::get('invoices/{invoice}/$ALIAS$', 'Main@show')->name('portal.invoices.$ALIAS$.show'); // 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'); // Route::post('invoices/{invoice}/$ALIAS$/confirm', 'Main@confirm')->name('portal.invoices.$ALIAS$.confirm');

View File

@ -24,6 +24,8 @@ return [
'enabled' => true, 'enabled' => true,
'path' => base_path() . '/app/Console/Stubs/Modules', 'path' => base_path() . '/app/Console/Stubs/Modules',
'files' => [ 'files' => [
'listeners/install' => 'Listeners/InstallModule.php',
'providers/event' => 'Providers/Event.php',
'routes/admin' => 'Routes/admin.php', 'routes/admin' => 'Routes/admin.php',
'routes/portal' => 'Routes/portal.php', 'routes/portal' => 'Routes/portal.php',
'lang/general' => 'Resources/lang/en-GB/general.php', 'lang/general' => 'Resources/lang/en-GB/general.php',
@ -35,8 +37,10 @@ return [
'package' => 'package.json', 'package' => 'package.json',
], ],
'replacements' => [ 'replacements' => [
'routes/admin' => ['ALIAS', 'STUDLY_NAME'], 'listeners/install' => ['ALIAS', 'STUDLY_NAME', 'MODULE_NAMESPACE'],
'routes/portal' => ['ALIAS', 'STUDLY_NAME'], 'providers/event' => ['ALIAS', 'STUDLY_NAME', 'MODULE_NAMESPACE'],
'routes/admin' => ['ALIAS', 'STUDLY_NAME', 'MODULE_NAMESPACE'],
'routes/portal' => ['ALIAS', 'STUDLY_NAME', 'MODULE_NAMESPACE'],
'webpack' => ['ALIAS'], 'webpack' => ['ALIAS'],
'json' => ['ALIAS', 'STUDLY_NAME', 'MODULE_NAMESPACE'], 'json' => ['ALIAS', 'STUDLY_NAME', 'MODULE_NAMESPACE'],
'lang/general' => ['ALIAS', 'STUDLY_NAME'], 'lang/general' => ['ALIAS', 'STUDLY_NAME'],

View File

@ -2,12 +2,12 @@
namespace Modules\OfflinePayments\Providers; 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\InstallModule;
use Modules\OfflinePayments\Listeners\ShowPaymentMethod; use Modules\OfflinePayments\Listeners\ShowPaymentMethod;
use Modules\OfflinePayments\Listeners\ShowSetting; use Modules\OfflinePayments\Listeners\ShowSetting;
class Event extends ServiceProvider class Event extends Provider
{ {
/** /**
* The event listener mappings for the module. * The event listener mappings for the module.