AccountLimit.php 797 B

12345678910111213141516171819202122232425262728
  1. <?php
  2. namespace App\Http\Middleware;
  3. use App\Models\Enums\CompanyReviewStatus;
  4. use Closure;
  5. use Illuminate\Http\Request;
  6. use Illuminate\Support\Facades\Auth;
  7. use Symfony\Component\HttpFoundation\Response;
  8. use Symfony\Component\HttpKernel\Exception\HttpException;
  9. class AccountLimit
  10. {
  11. /**
  12. * Handle an incoming request.
  13. *
  14. * @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
  15. */
  16. public function handle(Request $request, Closure $next): Response
  17. {
  18. if (Auth::user()->company->review_status == CompanyReviewStatus::APPROVED->value && Auth::user()->status ==1) {
  19. return $next($request);
  20. }
  21. throw new HttpException(403, "Sorry, the account's authorization expires or is denied");
  22. }
  23. }