Files
2026-09-21 10:14:57 +01:00

30 lines
721 B
PHP
Executable File

<?php
namespace Modules\Platform\app\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
class EnsureLicensedTenant
{
/**
* Ensure the current company has an active licence unless it is the MPBA platform tenant.
*/
public function handle(Request $request, Closure $next): Response
{
$user = $request->user();
$company = $user?->company;
abort_if(! $company, 403, 'No company is assigned to this account.');
if ($user->isMpbaPlatformAdmin()) {
return $next($request);
}
abort_unless($company->hasActiveLicense(), 402, 'Payment Required');
return $next($request);
}
}