implementing a mechanism to detect the absence of install.lock and redirecting users to /install to initiate the installation process.

This commit is contained in:
1day2die 2024-05-16 13:14:55 +02:00
parent 98ce2e3315
commit cea4e9efd7
3 changed files with 27 additions and 0 deletions

1
.gitignore vendored
View file

@ -1,4 +1,5 @@
# Ignore dependencies and cache
/.idea
/node_modules
/vendor
/storage/*.key

View file

@ -4,6 +4,7 @@ namespace App\Http;
use App\Http\Middleware\ApiAuthToken;
use App\Http\Middleware\CheckSuspended;
use App\Http\Middleware\InstallerLock;
use App\Http\Middleware\isAdmin;
use App\Http\Middleware\isMod;
use App\Http\Middleware\LastSeen;
@ -36,6 +37,7 @@ class Kernel extends HttpKernel
*/
protected $middlewareGroups = [
'web' => [
InstallerLock::class,
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,

View file

@ -0,0 +1,24 @@
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
class InstallerLock
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure(\Illuminate\Http\Request): (\Illuminate\Http\Response|\Illuminate\Http\RedirectResponse) $next
* @return \Illuminate\Http\Response|\Illuminate\Http\RedirectResponse
*/
public function handle(Request $request, Closure $next)
{
if (!file_exists(base_path()."/install.lock")){
return redirect('/install');
}
return $next($request);
}
}