Files
librenms-librenms/app/Http/Controllers/Auth/LoginController.php
T

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

73 lines
2.1 KiB
PHP
Raw Normal View History

2018-05-09 08:05:17 -05:00
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
2018-09-11 07:51:35 -05:00
use App\Models\Device;
2020-05-23 19:05:18 +02:00
use App\Providers\RouteServiceProvider;
2018-05-09 08:05:17 -05:00
use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Http\Request;
2018-09-11 07:51:35 -05:00
use LibreNMS\Config;
2018-05-09 08:05:17 -05:00
class LoginController extends Controller
{
/*
|--------------------------------------------------------------------------
| Login Controller
|--------------------------------------------------------------------------
|
| This controller handles authenticating users for the application and
| redirecting them to your home screen. The controller uses a trait
| to conveniently provide its functionality to your applications.
|
*/
use AuthenticatesUsers;
/**
* Where to redirect users after login.
*
* @var string
*/
2020-05-23 19:05:18 +02:00
protected $redirectTo = RouteServiceProvider::HOME;
2018-05-09 08:05:17 -05:00
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest')->except('logout');
}
2018-09-11 07:51:35 -05:00
2022-02-20 22:05:51 +01:00
public function username(): string
2018-09-11 07:51:35 -05:00
{
return 'username';
}
2022-02-20 22:05:51 +01:00
/**
* @return \Illuminate\View\View|\Illuminate\Http\RedirectResponse|\Symfony\Component\HttpFoundation\Response
*/
public function showLoginForm(Request $request)
2018-09-11 07:51:35 -05:00
{
2022-02-20 22:05:51 +01:00
// Check if we want to redirect users to the socialite provider directly
if (! $request->has('redirect') && ! $request->session()->has('block_auto_redirect') && Config::get('auth.socialite.redirect') && array_key_first(Config::get('auth.socialite.configs', []))) {
2022-02-20 22:05:51 +01:00
return (new SocialiteController)->redirect($request, array_key_first(Config::get('auth.socialite.configs', [])));
}
2018-09-11 07:51:35 -05:00
if (Config::get('public_status')) {
2019-08-19 22:52:21 -05:00
$devices = Device::isActive()->with('location')->get();
2020-09-21 14:54:51 +02:00
2018-09-11 07:51:35 -05:00
return view('auth.public-status')->with('devices', $devices);
}
2020-09-21 14:54:51 +02:00
2018-09-11 07:51:35 -05:00
return view('auth.login');
}
2022-02-20 22:05:51 +01:00
protected function loggedOut(Request $request): \Illuminate\Http\RedirectResponse
{
return redirect(Config::get('auth_logout_handler', $this->redirectTo));
}
2018-05-09 08:05:17 -05:00
}