Laravel 11, Vuexy Admin 10.3, by admin@koneko.mx
This commit is contained in:
112
modules/Admin/ModuleServiceProvider.php
Normal file
112
modules/Admin/ModuleServiceProvider.php
Normal file
@ -0,0 +1,112 @@
|
||||
<?php
|
||||
|
||||
namespace Modules\Admin;
|
||||
|
||||
use Illuminate\Auth\Events\Login;
|
||||
use Illuminate\Auth\Events\Logout;
|
||||
use Illuminate\Support\Facades\Event;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
use Illuminate\Support\ServiceProvider;
|
||||
use Livewire\Livewire;
|
||||
use Spatie\Permission\PermissionServiceProvider;
|
||||
use Modules\Admin\App\Http\Middleware\AdminTemplateMiddleware;
|
||||
use Modules\Admin\App\Listeners\ClearUserCache;
|
||||
use Modules\Admin\App\Listeners\HandleUserLogin;
|
||||
use Modules\Admin\App\Livewire\Cache\CacheFunctions;
|
||||
use Modules\Admin\App\Livewire\Users\UserCount;
|
||||
use Modules\Admin\App\Livewire\Users\UserTable;
|
||||
use Modules\Admin\App\Livewire\Rbac\RoleCards;
|
||||
use Modules\Admin\App\Livewire\Rbac\PermissionsIndex;
|
||||
use Modules\Admin\App\Livewire\Cache\CacheStats;
|
||||
use Modules\Admin\App\Livewire\Cache\SessionStats;
|
||||
use Modules\Admin\App\Livewire\Cache\MemcachedStats;
|
||||
use Modules\Admin\App\Livewire\Cache\RedisStats;
|
||||
use Modules\Admin\App\Livewire\AdminSettings\ApplicationSettings;
|
||||
use Modules\Admin\App\Livewire\AdminSettings\GeneralSettings;
|
||||
use Modules\Admin\App\Livewire\AdminSettings\InterfaceSettings;
|
||||
use Modules\Admin\App\Livewire\AdminSettings\MailSmtpSettings;
|
||||
use Modules\Admin\App\Livewire\AdminSettings\MailSenderResponseSettings;
|
||||
use Modules\Admin\App\Livewire\WebsiteSettings\AnalyticsSettings;
|
||||
use Modules\Admin\App\Livewire\WebsiteSettings\ChatSettings;
|
||||
use Modules\Admin\App\Livewire\WebsiteSettings\ContactFormSettings;
|
||||
use Modules\Admin\App\Livewire\WebsiteSettings\ContactInfoSettings;
|
||||
use Modules\Admin\App\Livewire\WebsiteSettings\FaviconSettings;
|
||||
use Modules\Admin\App\Livewire\WebsiteSettings\ImageLogoSettings;
|
||||
use Modules\Admin\App\Livewire\WebsiteSettings\LocationSettings;
|
||||
use Modules\Admin\App\Livewire\WebsiteSettings\SocialSettings;
|
||||
use Modules\Admin\App\Livewire\WebsiteSettings\TemplateSettings;
|
||||
use Modules\Admin\App\Livewire\WebsiteSettings\WebsiteSettings;
|
||||
use Modules\Admin\App\Livewire\WebsiteSettings\LegalSettings;
|
||||
use Modules\Admin\App\Models\User;
|
||||
use Modules\Admin\App\Providers\FortifyServiceProvider;
|
||||
use Modules\Admin\App\Providers\GlobalSettingsProvider;
|
||||
use Modules\Admin\App\Providers\VuexyAdminProvider;
|
||||
use OwenIt\Auditing\AuditableObserver;
|
||||
|
||||
class ModuleServiceProvider extends ServiceProvider
|
||||
{
|
||||
public static $prefixRoute = 'admin';
|
||||
|
||||
public function register()
|
||||
{
|
||||
// Register the module's services and providers
|
||||
$this->app->register(FortifyServiceProvider::class);
|
||||
$this->app->register(PermissionServiceProvider::class);
|
||||
$this->app->register(GlobalSettingsProvider::class);
|
||||
$this->app->register(VuexyAdminProvider::class);
|
||||
}
|
||||
|
||||
|
||||
public function boot()
|
||||
{
|
||||
// Registrar alias del middleware
|
||||
$this->app['router']->aliasMiddleware('admin.settings', AdminTemplateMiddleware::class);
|
||||
|
||||
// Register the module's routes
|
||||
Route::middleware(['web'])->group(__DIR__ . '/routes.php');
|
||||
|
||||
// Register the module's views and resources
|
||||
$this->loadViewsFrom(__DIR__ . '/Resources/views', 'admin');
|
||||
|
||||
// Register the migrations
|
||||
$this->loadMigrationsFrom(__DIR__ . '/Database/migrations');
|
||||
|
||||
// Registrar manualmente listeners
|
||||
Event::listen(Login::class, HandleUserLogin::class);
|
||||
Event::listen(Logout::class, ClearUserCache::class);
|
||||
|
||||
// Register the module's Livewire components
|
||||
Livewire::component('user-count', UserCount::class);
|
||||
Livewire::component('user-table', UserTable::class);
|
||||
Livewire::component('role-card', RoleCards::class);
|
||||
Livewire::component('permissions-index', PermissionsIndex::class);
|
||||
|
||||
Livewire::component('general-settings', GeneralSettings::class);
|
||||
Livewire::component('application-settings', ApplicationSettings::class);
|
||||
Livewire::component('interface-settings', InterfaceSettings::class);
|
||||
|
||||
Livewire::component('cache-stats', CacheStats::class);
|
||||
Livewire::component('session-stats', SessionStats::class);
|
||||
Livewire::component('redis-stats', RedisStats::class);
|
||||
Livewire::component('memcached-stats', MemcachedStats::class);
|
||||
Livewire::component('cache-functions', CacheFunctions::class);
|
||||
|
||||
Livewire::component('mail-smtp-settings', MailSmtpSettings::class);
|
||||
Livewire::component('mail-sender-response-settings', MailSenderResponseSettings::class);
|
||||
|
||||
Livewire::component('website-settings', WebsiteSettings::class);
|
||||
Livewire::component('website-favicon-settings', FaviconSettings::class);
|
||||
Livewire::component('website-image-logo-settings', ImageLogoSettings::class);
|
||||
Livewire::component('website-social-settings', SocialSettings::class);
|
||||
Livewire::component('website-contact-form-settings', ContactFormSettings::class);
|
||||
Livewire::component('website-contact-info-settings', ContactInfoSettings::class);
|
||||
Livewire::component('website-location-settings', LocationSettings::class);
|
||||
Livewire::component('website-chat-settings', ChatSettings::class);
|
||||
Livewire::component('website-analytics-settings', AnalyticsSettings::class);
|
||||
Livewire::component('website-template-settings', TemplateSettings::class);
|
||||
Livewire::component('website-legal-settings', LegalSettings::class);
|
||||
|
||||
// Enable auditing
|
||||
User::observe(AuditableObserver::class);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user