1234567891011121314151617181920212223242526272829 |
- <?php
- namespace App\Http\Middleware;
- use App\Models\Enums\CompanyReviewStatus;
- use Carbon\Carbon;
- use Closure;
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\Auth;
- use Symfony\Component\HttpFoundation\Response;
- use Symfony\Component\HttpKernel\Exception\HttpException;
- class AccountLimit
- {
- /**
- * Handle an incoming request.
- *
- * @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
- */
- public function handle(Request $request, Closure $next): Response
- {
- if (Auth::user()->company->review_status === CompanyReviewStatus::APPROVED->value && Auth::user()->status ===1 &&Carbon::parse(Auth::user()->company->exp_date)->gt(Carbon::now())) {
- return $next($request);
- }
- throw new HttpException(403, "Sorry, the account's authorization expires or is denied");
- }
- }
|