LoginController.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?php
  2. namespace App\Http\Controllers\Auth;
  3. use App\Http\Controllers\Controller;
  4. use Illuminate\Foundation\Auth\AuthenticatesUsers;
  5. use Illuminate\Http\JsonResponse;
  6. use Illuminate\Http\RedirectResponse;
  7. use Illuminate\Http\Request;
  8. use Illuminate\Http\Response;
  9. use Illuminate\Support\Facades\Auth;
  10. use Illuminate\Validation\ValidationException;
  11. class LoginController extends Controller
  12. {
  13. /*
  14. |--------------------------------------------------------------------------
  15. | Login Controller
  16. |--------------------------------------------------------------------------
  17. |
  18. | This controller handles authenticating users for the application and
  19. | redirecting them to your home screen. The controller uses a trait
  20. | to conveniently provide its functionality to your applications.
  21. |
  22. */
  23. use AuthenticatesUsers;
  24. /**
  25. * Where to redirect users after login.
  26. *
  27. * @var string
  28. */
  29. protected $redirectTo = '/rejected';
  30. /**
  31. * Create a new controller instance.
  32. *
  33. * @return void
  34. */
  35. public function __construct()
  36. {
  37. $this->middleware('guest')->except('logout');
  38. }
  39. public function username()
  40. {
  41. return 'name';
  42. }
  43. /**
  44. * Handle a login request to the application.
  45. *
  46. * @param Request $request
  47. * @return void
  48. *
  49. * @throws ValidationException
  50. */
  51. public function login(Request $request)
  52. {
  53. $this->validateLogin($request);
  54. if (method_exists($this, 'hasTooManyLoginAttempts') &&
  55. $this->hasTooManyLoginAttempts($request)) {
  56. $this->fireLockoutEvent($request);
  57. return $this->sendLockoutResponse($request);
  58. }
  59. if ($this->attemptLogin($request)) {
  60. $this->log(__METHOD__,__FUNCTION__,'',Auth::user()['id']);
  61. return $this->sendLoginResponse($request);
  62. }
  63. $this->incrementLoginAttempts($request);
  64. $this->log(__METHOD__,__FUNCTION__,'',Auth::user()['id']);
  65. return $this->sendFailedLoginResponse($request);
  66. }
  67. }