<?php

namespace App\Listeners;

use App\User;
use Carbon\Carbon;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Contracts\Queue\ShouldQueue;

class AuthLoginLog {
	/**
	 * Create the event listener.
	 *
	 * @return void
	 */
	public function __construct() {
		//
	}

	/**
	 * Handle the event.
	 *
	 * @param object $event
	 *
	 * @return void
	 */
	public function handle( $event ) {
		//
		$user    = $event->user;
		$request = request();
		\App\Models\AuthLoginLog::create( [
			'user_id'    => $user->id,
			'ip_address' => $request->ip(),
			'agent'      => $request->userAgent(),
			'login_at'   => Carbon::now()
		] );

		$user->last_login_at = Carbon::now()->toDateTimeString();
		$user->save();
	}
}
