diff --git a/resources/views/components/table.blade.php b/resources/views/components/table.blade.php index 3bacc21..77e76fb 100644 --- a/resources/views/components/table.blade.php +++ b/resources/views/components/table.blade.php @@ -7,13 +7,11 @@
- - @foreach ($fields as $field) - - {{ $field->getLabel() }} - - @endforeach - + @foreach ($fields as $field) + + {{ $field->getLabel() }} + + @endforeach diff --git a/resources/views/list/header.blade.php b/resources/views/list/header.blade.php index 333465e..4a0a131 100644 --- a/resources/views/list/header.blade.php +++ b/resources/views/list/header.blade.php @@ -1,3 +1,30 @@ +@php + $event = $activity->event; + $eventStyle = match ($event) { + 'created', + 'attached' + => 'bg-green-50/70 dark:bg-green-100/10 text-green-700 dark:text-green-400 dark:border-green-600', + 'updated' => 'bg-blue-50/70 dark:bg-blue-100/10 text-blue-700 dark:text-blue-400 dark:border-blue-600', + 'deleted', 'detached' => 'bg-red-50/70 dark:bg-red-100/10 text-red-700 dark:text-red-400 dark:border-red-600', + 'restored' + => 'bg-orange-50/70 dark:bg-orange-100/10 text-orange-700 dark:text-orange-400 dark:border-orange-600', + default => 'bg-gray-50/70 dark:bg-gray-100/10 text-gray-700 dark:text-gray-400 dark:border-gray-600', + }; + + // Relation Manager + $showRelationManager = false; + if ($logger->relationManager) { + $relationManagertLabel = $logger->getRelationManagerLabel(); + $relationManagertId = $logger->getRelationManagerId($activity); + $showRelationManager = $relationManagertLabel || $relationManagertId; + } + + // Subject + $subjectLabel = $logger->getSubjectLabel(); + $subjectId = $logger->getSubjectId($activity); + $showSubject = $subjectLabel || $subjectId; +@endphp +
- @php - $subject_label = $logger->getLabel(); - - $event = $activity->event; - $eventStyle = match ($event) { - 'created', 'attached' => 'bg-green-50/70 dark:bg-green-100/10 text-green-700 dark:text-green-400 dark:border-green-600', - 'updated' => 'bg-blue-50/70 dark:bg-blue-100/10 text-blue-700 dark:text-blue-400 dark:border-blue-600', - 'deleted', 'detached' => 'bg-red-50/70 dark:bg-red-100/10 text-red-700 dark:text-red-400 dark:border-red-600', - 'restored' => 'bg-orange-50/70 dark:bg-orange-100/10 text-orange-700 dark:text-orange-400 dark:border-orange-600', - default => 'bg-gray-50/70 dark:bg-gray-100/10 text-gray-700 dark:text-gray-400 dark:border-gray-600', - }; - @endphp - - @if ($logger->relationManager) + @if ($showRelationManager)
- {{ $logger->relationManager->getLabel() }} - #{{ $activity->properties['relation_manager']['id'] ?? '–' }} + {{ $relationManagertLabel }} + {{ $relationManagertId }}
@endif -
- {{ $subject_label }} - #{{ $activity->subject_id }} -
+ @if ($showSubject) +
+ {{ $subjectLabel }} + {{ $subjectId }} +
+ @endif @if ($hasChanges && $this->isCollapsible) getRelationManager($name); } + + public function getRelationManagerLabel(): ?string + { + return $this->relationManager->getLabel(); + } + + public function getRelationManagerId($activity): ?string + { + $value = $activity->properties['relation_manager']['id'] ?? null; + + return $value ? "#{$value}" : '–'; + } } diff --git a/src/Loggers/Concerns/HasResourceLogger.php b/src/Loggers/Concerns/HasResourceLogger.php index 912e849..f8399c5 100644 --- a/src/Loggers/Concerns/HasResourceLogger.php +++ b/src/Loggers/Concerns/HasResourceLogger.php @@ -34,4 +34,14 @@ public function getFieldByName(string $name): ?Field return $this->getResourceLogger()->getFieldByName($name); } + + public function getSubjectLabel(): ?string + { + return $this->getLabel(); + } + + public function getSubjectId($activity): ?string + { + return '#' . $activity->subject_id; + } }