@use('App\Helpers\Helpers') @use('App\Enums\RoleEnum') @php $filter = request()->filled('filter') ? request()->filter : 'all'; $roleName = getCurrentRoleName(); $isTrashed = isset($row['deleted_at']) && !empty($row['deleted_at']); $mimeImageMapping = [ 'application/pdf' => 'images/file-icon/pdf.png', 'text/csv' => 'images/file-icon/csv.png', 'application/msword' => 'images/file-icon/word.png', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' => 'images/file-icon/word.png', 'application/vnd.ms-excel' => 'images/file-icon/xls.png', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' => 'images/file-icon/xls.png', 'application/vnd.ms-powerpoint' => 'images/file-icon/folder.png', 'application/vnd.openxmlformats-officedocument.presentationml.presentation' => 'images/file-icon/folder.png', 'text/plain' => 'images/file-icon/txt.png', 'audio/mpeg' => 'images/file-icon/sound.png', 'audio/wav' => 'images/file-icon/sound.png', 'audio/ogg' => 'images/file-icon/sound.png', 'video/mp4' => 'images/file-icon/video.png', 'video/webm' => 'images/file-icon/video.png', 'video/ogg' => 'images/file-icon/video.png', 'application/zip' => 'images/file-icon/zip.png', 'application/x-tar' => 'images/file-icon/zip.png', 'application/gzip' => 'images/file-icon/zip.png', ]; @endphp @if (!empty($column['type'])) @if (isset($column['field']) && $column['type'] == 'status') @can(@$action['permission']) @endcan @cannot(@$action['permission']) @endcannot @elseif (isset($column['field']) && $column['type'] == 'is_verified') @can(@$action['permission']) @endcan @cannot(@$action['permission']) @endcannot @elseif (isset($column['field']) && $column['type'] == 'avatar') @if ($row[$column['field']]) @php $users = $row[$column['field']]; $totalUsers = count($users); $maxVisible = 3; @endphp
@if(is_array($users)) @if(count($users)) @foreach ($users as $index => $user) @if ($index < $maxVisible)
@if ($user->profile_image_id) image @else
{{ substr($user->name, 0, 1) }}
@endif
@endif @endforeach
@php $remaining = $totalUsers - $maxVisible; @endphp @if ($remaining > 0) +{{ $remaining }} @endif
@else
N/A
@endif @else
N/A
@endif
@else
N/A
@endif @elseif (isset($column['field']) && $column['type'] == 'badge') @if (isset($column['colorClasses'])) @if (isset($column['colorClasses'][$row[$column['field']]]))
{{ $row[$column['field']] }}
@endif @else @isset($column['badge_type']) @if ($column['badge_type'] == 'light') {{ $row[$column['field']] }} @else
{{ $row[$column['field']] }}
@endif @else
{{ $row[$column['field']] }}
@endisset @endif @elseif((isset($actionButtons) || isset($modalActionButtons) || isset($viewActionBox)) && $column['type'] == 'action') @if (!empty($actionButtons) || !empty($modalActionButtons) || isset($viewActionBox))
@if (!$isTrashed) @if (is_array($actionButtons)) @foreach ($actionButtons as $actionButton) @can($actionButton['permission'])
@isset($actionButton['icon']) @endisset
@endcan @endforeach @endif @if (is_array($modalActionButtons)) @foreach ($modalActionButtons as $modalActionButton) @if (!$system_reserved) @can($modalActionButton['permission']) {{-- Check if not trashed --}} @endcan @endif @endforeach @endif @if ($viewActionBox) @includeIf($viewActionBox['view'], [$viewActionBox['field'] => $row]) @endif @else @endif
@endif @endif @else
@if (isset($column['imageField']) && $row[$column['imageField']]) @php $attachment = getMedia($row[$column['imageField']]); $imageUrl = getImageUrl($attachment?->original_url); @endphp image @elseif(isset($column['imageUrl'])) image @elseif(isset($column['placeholderImage'])) placeholder @elseif(isset($column['placeholderLetter']))
{{ substr($row[$column['field']], 0, 1) }}
@elseif(isset($column['mediaImage'])) @php $file = getMedia($row[$column['mediaImage']]); @endphp avatar @endif @if (isset($column['action']) && $column['action'])
@if (isset($column['route']) && $filter != 'trash') {{ $row[$column['field']] }} @else {{ $row[$column['field']] }} @endif @php $renderableActions = collect($actions) ->filter(function ($action) use ($filter, $row) { $passesFilter = empty($action['whenFilter']) || (!empty($action['whenFilter']) && in_array($filter, $action['whenFilter'])); $passesStatus = !isset($action['whenStatus']) || (isset($action['whenStatus']) && $action['whenStatus'] == $row['status']); $hasPermission = auth()?->user()?->can($action['permission']); return $passesFilter && $passesStatus && $hasPermission; }) ?->isNotEmpty(); @endphp @if ($renderableActions) @endif
@elseif(!isset($column['profile_image']) && !isset($column['email'])) {{ $row[$column['field']] }} @endif @if (isset($column['profile_image']) && isset($column['email']))
@if (getMedia($row[$column['profile_image']])?->original_url) image @else
{{ substr($row[$column['field']], 0, 1) }}
@endif
@if (isset($column['route'])) @if ($row[$column['profile_id']]) @php $route = route($column['route'], $row[$column['profile_id']]); @endphp {{ $row[$column['field']] }} @else
{{ $row[$column['field']] }}
@endif @else
{{ $row[$column['field']] }}
@endif
{{ $row[$column['email']] }}
@endif
@endif @push('scripts') @endpush