66 lines
1.5 KiB
PHP
66 lines
1.5 KiB
PHP
|
<?php
|
||
|
|
||
|
namespace App\Providers;
|
||
|
|
||
|
use Illuminate\Routing\Router;
|
||
|
use Illuminate\Support\ServiceProvider;
|
||
|
use App\Http\Middleware\Installer\canInstall;
|
||
|
use App\Http\Middleware\Installer\canUpdate;
|
||
|
|
||
|
|
||
|
class LaravelInstallerServiceProvider extends ServiceProvider
|
||
|
{
|
||
|
/**
|
||
|
* Indicates if loading of the provider is deferred.
|
||
|
*
|
||
|
* @var bool
|
||
|
*/
|
||
|
protected $defer = false;
|
||
|
|
||
|
/**
|
||
|
* Register the service provider.
|
||
|
*
|
||
|
* @return void
|
||
|
*/
|
||
|
public function register()
|
||
|
{
|
||
|
$this->publishFiles();
|
||
|
$this->loadRoutesFrom(__DIR__.'/../../routes/web.php');
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Bootstrap the application events.
|
||
|
*
|
||
|
* @param \Illuminate\Routing\Router $router
|
||
|
*/
|
||
|
public function boot(Router $router)
|
||
|
{
|
||
|
$router->middlewareGroup('install', [CanInstall::class]);
|
||
|
$router->middlewareGroup('update', [CanUpdate::class]);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Publish config file for the installer.
|
||
|
*
|
||
|
* @return void
|
||
|
*/
|
||
|
protected function publishFiles()
|
||
|
{
|
||
|
$this->publishes([
|
||
|
__DIR__.'/../Config/installer.php' => base_path('config/installer.php'),
|
||
|
], 'laravelinstaller');
|
||
|
|
||
|
$this->publishes([
|
||
|
__DIR__.'/../assets' => public_path('installer'),
|
||
|
], 'laravelinstaller');
|
||
|
|
||
|
$this->publishes([
|
||
|
__DIR__.'/../Views' => base_path('resources/views/vendor/installer'),
|
||
|
], 'laravelinstaller');
|
||
|
|
||
|
$this->publishes([
|
||
|
__DIR__.'/../Lang' => base_path('resources/lang'),
|
||
|
], 'laravelinstaller');
|
||
|
}
|
||
|
}
|