Spaces:
Running
Running
File size: 648 Bytes
907b200 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | <?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
class EnsureActiveSubscription
{
public function handle(Request $request, Closure $next): Response
{
$user = $request->user();
if (!$user) {
return response()->json([
'message' => 'Unauthenticated'
], 401);
}
if (!$user->subscribed('default') && !$user->isFree()) {
return response()->json([
'message' => 'Active subscription required'
], 403);
}
return $next($request);
}
}
|