@foreach($logs as $log)
@php
$properties = json_decode($log->properties);
$action = $properties->action ?? '';
$subjectType = class_basename($log->subject_type);
$causerName = optional($log->causer)->fullName() ?? ($properties->causer_name ?? 'Unknown');
$agent = $properties->agent ?? null;
$browser = strtolower($agent->browser ?? 'unknown');
$platform = strtolower($agent->platform ?? 'unknown');
$ipAddress = $agent->ip_address ?? null;
// Determine browser logo
if (strpos($browser, 'chrome') !== false) {
$browserLogo = 'chrome';
} elseif (strpos($browser, 'firefox') !== false) {
$browserLogo = 'firefox';
} elseif (strpos($browser, 'safari') !== false) {
$browserLogo = 'safari';
} elseif (strpos($browser, 'edge') !== false) {
$browserLogo = 'edge';
} elseif (strpos($browser, 'opera') !== false) {
$browserLogo = 'opera';
} else {
$browserLogo = 'unknown';
}
// Determine platform logo
if (strpos($platform, 'windows') !== false) {
$platformLogo = 'windows';
} elseif (strpos($platform, 'mac') !== false) {
$platformLogo = 'mac';
} elseif (strpos($platform, 'linux') !== false) {
$platformLogo = 'linux';
} elseif (strpos($platform, 'android') !== false) {
$platformLogo = 'android';
} elseif (strpos($platform, 'ios') !== false || strpos($platform, 'iphone') !== false) {
$platformLogo = 'ios';
} else {
$platformLogo = 'other';
}
$browserIcon = '
';
$platformIcon = '
';
$ipDisplay = $ipAddress
? '' . e($ipAddress) . ''
: 'Unknown IP';
$userAgentDisplay = '' . $browserIcon . ' ' . $platformIcon . ' ' . $ipDisplay . '
';
@endphp
| {{ $action }} |
{{ $subjectType }} |
{{ $log->description }} |
{{ $causerName }} |
{!! $userAgentDisplay !!} |
{{ $log->created_at->format('d M Y H:i') }} |
@endforeach