32 خطوط
768 B
PHP
32 خطوط
768 B
PHP
<?php
|
|
|
|
namespace App\Http\Middleware;
|
|
|
|
use App\Services\ActivityLogger;
|
|
use Closure;
|
|
use Illuminate\Http\Request;
|
|
use Symfony\Component\HttpFoundation\Response;
|
|
|
|
class LogActivity
|
|
{
|
|
public function handle(Request $request, Closure $next): Response
|
|
{
|
|
$response = $next($request);
|
|
|
|
if ($request->method() !== 'GET' && auth()->check()) {
|
|
$action = $request->method().' '.$request->path();
|
|
$description = null;
|
|
|
|
if (str_contains($request->path(), 'login')) {
|
|
$action = 'login';
|
|
} elseif (str_contains($request->path(), 'logout')) {
|
|
$action = 'logout';
|
|
}
|
|
|
|
ActivityLogger::log($action, $description);
|
|
}
|
|
|
|
return $response;
|
|
}
|
|
}
|