PATH:
home
/
lab2454c
/
vaultchip.com
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Foundation
/
Console
<?php namespace Illuminate\Foundation\Console; use App\Http\Middleware\PreventRequestsDuringMaintenance; use Exception; use Illuminate\Console\Command; use Illuminate\Foundation\Exceptions\RegisterErrorViewPaths; use Throwable; class DownCommand extends Command { /** * The console command signature. * * @var string */ protected $signature = 'down {--redirect= : The path that users should be redirected to} {--render= : The view that should be prerendered for display during maintenance mode} {--retry= : The number of seconds after which the request may be retried} {--refresh= : The number of seconds after which the browser may refresh} {--secret= : The secret phrase that may be used to bypass maintenance mode} {--status=503 : The status code that should be used when returning the maintenance mode response}'; /** * The console command description. * * @var string */ protected $description = 'Put the application into maintenance / demo mode'; /** * Execute the console command. * * @return int */ public function handle() { try { if (is_file(storage_path('framework/down'))) { $this->comment('Application is already down.'); return 0; } file_put_contents( storage_path('framework/down'), json_encode($this->getDownFilePayload(), JSON_PRETTY_PRINT) ); file_put_contents( storage_path('framework/maintenance.php'), file_get_contents(__DIR__.'/stubs/maintenance-mode.stub') ); $this->comment('Application is now in maintenance mode.'); } catch (Exception $e) { $this->error('Failed to enter maintenance mode.'); $this->error($e->getMessage()); return 1; } } /** * Get the payload to be placed in the "down" file. * * @return array */ protected function getDownFilePayload() { return [ 'except' => $this->excludedPaths(), 'redirect' => $this->redirectPath(), 'retry' => $this->getRetryTime(), 'refresh' => $this->option('refresh'), 'secret' => $this->option('secret'), 'status' => (int) $this->option('status', 503), 'template' => $this->option('render') ? $this->prerenderView() : null, ]; } /** * Get the paths that should be excluded from maintenance mode. * * @return array */ protected function excludedPaths() { try { return $this->laravel->make(PreventRequestsDuringMaintenance::class)->getExcludedPaths(); } catch (Throwable $e) { return []; } } /** * Get the path that users should be redirected to. * * @return string */ protected function redirectPath() { if ($this->option('redirect') && $this->option('redirect') !== '/') { return '/'.trim($this->option('redirect'), '/'); } return $this->option('redirect'); } /** * Prerender the specified view so that it can be rendered even before loading Composer. * * @return string */ protected function prerenderView() { (new RegisterErrorViewPaths)(); return view($this->option('render'), [ 'retryAfter' => $this->option('retry'), ])->render(); } /** * Get the number of seconds the client should wait before retrying their request. * * @return int|null */ protected function getRetryTime() { $retry = $this->option('retry'); return is_numeric($retry) && $retry > 0 ? (int) $retry : null; } }
[-] EnvironmentCommand.php
[edit]
[-] ConsoleMakeCommand.php
[edit]
[-] RouteClearCommand.php
[edit]
[-] MailMakeCommand.php
[edit]
[-] ConfigCacheCommand.php
[edit]
[-] CastMakeCommand.php
[edit]
[+]
..
[-] ObserverMakeCommand.php
[edit]
[-] VendorPublishCommand.php
[edit]
[-] QueuedCommand.php
[edit]
[-] RouteListCommand.php
[edit]
[-] NotificationMakeCommand.php
[edit]
[-] StorageLinkCommand.php
[edit]
[-] DownCommand.php
[edit]
[-] ComponentMakeCommand.php
[edit]
[-] ChannelMakeCommand.php
[edit]
[-] ResourceMakeCommand.php
[edit]
[-] Kernel.php
[edit]
[-] ServeCommand.php
[edit]
[-] EventListCommand.php
[edit]
[-] RequestMakeCommand.php
[edit]
[-] ConfigClearCommand.php
[edit]
[-] OptimizeClearCommand.php
[edit]
[-] TestMakeCommand.php
[edit]
[-] EventGenerateCommand.php
[edit]
[-] RuleMakeCommand.php
[edit]
[-] PolicyMakeCommand.php
[edit]
[-] KeyGenerateCommand.php
[edit]
[-] ListenerMakeCommand.php
[edit]
[-] ViewClearCommand.php
[edit]
[-] ModelMakeCommand.php
[edit]
[-] EventClearCommand.php
[edit]
[-] ProviderMakeCommand.php
[edit]
[-] OptimizeCommand.php
[edit]
[-] EventMakeCommand.php
[edit]
[-] ExceptionMakeCommand.php
[edit]
[-] ViewCacheCommand.php
[edit]
[-] JobMakeCommand.php
[edit]
[-] StubPublishCommand.php
[edit]
[+]
stubs
[-] ClearCompiledCommand.php
[edit]
[-] UpCommand.php
[edit]
[-] RouteCacheCommand.php
[edit]
[-] EventCacheCommand.php
[edit]
[-] ClosureCommand.php
[edit]
[-] PackageDiscoverCommand.php
[edit]