Add setting for recording IP address (#1221)
* Add setting for recording IP address * Record IP on registration
This commit is contained in:
@@ -5,6 +5,7 @@ namespace App\Http\Controllers\Auth;
|
||||
use App\Contracts\Controller;
|
||||
use App\Exceptions\PilotIdNotFound;
|
||||
use App\Models\Enums\UserState;
|
||||
use App\Models\User;
|
||||
use App\Services\UserService;
|
||||
use Illuminate\Foundation\Auth\AuthenticatesUsers;
|
||||
use Illuminate\Http\Request;
|
||||
@@ -104,11 +105,16 @@ class LoginController extends Controller
|
||||
*/
|
||||
protected function sendLoginResponse(Request $request)
|
||||
{
|
||||
/** @var User $user */
|
||||
$user = Auth::user();
|
||||
|
||||
if (setting('general.record_user_ip', true)) {
|
||||
$user->last_ip = $request->ip();
|
||||
$user->save();
|
||||
}
|
||||
|
||||
if ($user->state !== UserState::ACTIVE && $user->state !== UserState::ON_LEAVE) {
|
||||
Log::info('Trying to login '.$user->ident.', state '
|
||||
.UserState::label($user->state));
|
||||
Log::info('Trying to login '.$user->ident.', state '.UserState::label($user->state));
|
||||
|
||||
// Log them out
|
||||
$this->guard()->logout();
|
||||
|
||||
@@ -119,11 +119,16 @@ class RegisterController extends Controller
|
||||
*
|
||||
* @return User
|
||||
*/
|
||||
protected function create(array $opts)
|
||||
protected function create(Request $request): User
|
||||
{
|
||||
// Default options
|
||||
$opts = $request->all();
|
||||
$opts['password'] = Hash::make($opts['password']);
|
||||
|
||||
if (setting('general.record_user_ip', true)) {
|
||||
$opts['last_ip'] = $request->ip();
|
||||
}
|
||||
|
||||
// Convert transfer hours into minutes
|
||||
if (isset($opts['transfer_time'])) {
|
||||
$opts['transfer_time'] *= 60;
|
||||
@@ -158,7 +163,7 @@ class RegisterController extends Controller
|
||||
{
|
||||
$this->validator($request->all())->validate();
|
||||
|
||||
$user = $this->create($request->all());
|
||||
$user = $this->create($request);
|
||||
if ($user->state === UserState::PENDING) {
|
||||
return view('auth.pending');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user