first commit
Some checks failed
Build / run (push) Has been cancelled

This commit is contained in:
maher
2025-10-29 11:42:25 +01:00
commit 703f50a09d
4595 changed files with 385164 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
<?php
namespace Common\Auth\Middleware;
use Closure;
use Illuminate\Contracts\Auth\StatefulGuard;
use Illuminate\Http\Request;
class ForbidBannedUser
{
public function __construct(protected StatefulGuard $guard)
{
}
public function handle(Request $request, Closure $next)
{
if ($request->user() && $request->user()->isBanned()) {
$this->guard->logout();
$request->session()->invalidate();
$request->session()->regenerateToken();
abort(403);
}
return $next($request);
}
}

View File

@@ -0,0 +1,14 @@
<?php
namespace Common\Auth\Middleware;
use Illuminate\Auth\Middleware\Authenticate;
class OptionalAuthenticate extends Authenticate
{
// prevent authentication exception if user is not logged in at all. This will be handled in policies instead
protected function unauthenticated($request, array $guards)
{
}
}

View File

@@ -0,0 +1,20 @@
<?php
namespace Common\Auth\Middleware;
use Closure;
use Illuminate\Http\Request;
class VerifyApiAccessMiddleware
{
public function handle(Request $request, Closure $next)
{
$model = $request->user() ?: app('guestRole');
if (!requestIsFromFrontend() && !$model->hasPermission('api.access')) {
abort(401);
}
return $next($request);
}
}