Files
shipping-portal/app/Http/Middleware/RouteLogs.php
T
WAKOYA_KUMSA\waqo1 569a22c0db route activity log
2022-12-28 13:15:15 +03:00

52 lines
1.6 KiB
PHP

<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Str;
use Illuminate\Http\Request;
use App\Models\RouteLog;
use Auth;
// use Location;
class RouteLogs
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure(\Illuminate\Http\Request): (\Illuminate\Http\Response|\Illuminate\Http\RedirectResponse) $next
* @return \Illuminate\Http\Response|\Illuminate\Http\RedirectResponse
*/
public function handle(Request $request, Closure $next)
{
$ip_address = getenv('REMOTE_ADDR');
$url = $request->fullUrl();
$call_metthod = $request->method();
$platform = $request->header('sec-ch-ua-platform');
// dd(\Location::get($ip_address));
$browser = Str::after($request->header('sec-ch-ua'),'Not?A_Brand";v="8", "Chromium";v="108", "');
$geo = unserialize(file_get_contents("http://www.geoplugin.net/php.gp?ip=$ip_address"));
$longitude = $geo["geoplugin_longitude"];
$latitude = $geo["geoplugin_latitude"];
$last_page = url()->previous();
$countryName = $geo["geoplugin_countryName"];
RouteLog::create([
// 'user_id' => Auth::user()->id,
'user_id' => '1',
'ip_address' => $request->ip(),
'url' => $url,
'call_method'=> $call_metthod,
'browser' => $browser,
'platform' => $platform,
'longitude' =>$longitude,
'latitude' => $latitude,
'last_page' => $last_page,
'countryname' =>$countryName
]);
return $next($request);
}
}