ldc-com-app-bo/resources/views/bo/pages/documents/index-list.blade.php
2026-10-22 16:18:08 +02:00

119 lines
6.9 KiB
PHP

<div class="table-responsive">
<table class="table fix-action">
<thead>
@php
$cols = [
'title' => str(__('validation.attributes.title'))->ucFirst(),
'directory_id' => str(__('models.classes.directory'))->ucFirst(),
'document_id' => str(__('models.classes.document'))->ucFirst(),
'type' => str(__('validation.custom.type'))->ucFirst(),
'order' => str(__('validation.custom.order'))->ucFirst(),
];
@endphp
@include('bo.modules.table-col-sorter', [
'cols' => $cols,
'mobileHide' => []
])
</thead>
<tbody>
@if ($documentModels->count())
@foreach ($documentModels as $documentModel)
<tr>
<td class="text-center align-middle">
<span>{{ $documentModel->title }}</span>
</td>
<td class="text-center align-middle">
<a href="{{ route('bo.directories.edit', ['tenant' => \tenant(), 'directory' => $documentModel->directory_id]) }}">
<button class="btn btn-sm btn-outline-dark h-auto"
title="{{ __('Accéder au dossier associé') }}"
data-bs-toggle="tooltip">
{{ $documentModel->directory->name['fr'] }}
</button>
</a>
</td>
<td class="text-center align-middle">
@if(!is_null($documentModel->document_id))
<a href="{{ route('bo.documents.edit', ['tenant' => \tenant(), 'document' => $documentModel->document_id]) }}">
<button class="btn btn-sm btn-outline-dark h-auto"
title="{{ __('Accéder au document associé') }}"
data-bs-toggle="tooltip">
{{ $documentModel->parentDocument->title }}
</button>
</a>
@endif
</td>
<td class="text-center align-middle">
@foreach(\App\Enums\Documents\TypeEnum::cases() as $typeEnum)
@if ($documentModel->type === $typeEnum->name())
<span class="px1"
title="{{ sprintf('Document de type .%s', $documentModel->type) }}"
data-bs-toggle="tooltip">
<i class="fa-solid fa-{{ $typeEnum->icon() }}"></i>
</span>
@endif
@endforeach
</td>
@php $routeName = request()->route()->getName(); @endphp
@if (empty(request()->search) && Session::get("$routeName.sort_col") === 'order')
@include('bo.modules.change-model-order', [
'routeName' => 'documents',
'models' => $documentModels,
'model' => $documentModel,
])
@endif
<td>
<div class="btn-group">
@can('delete', $documentModel)
<form action="{{ route('bo.documents.destroy', ['tenant' => \tenant(), 'document' => $documentModel]) }}" method="POST"
class="d-inline confirmDeleteTS">
@method('DELETE')
@csrf
@endcan
<div class="btn-group" role="group">
@can('view', $documentModel)
<a href="{{ asset(sprintf('/storage/docs/%s/%s.%s', \tenant()->getKey(), $documentModel->uuid, $documentModel->type)) }}"
target="blank"
class="btn btn-sm btn-warning"
role="button"
title="{{ __('Visualiser le :model', ['model' => __('models.classes.document')]) }}"
data-bs-toggle="tooltip">
<i class="fa-solid fa-eye"></i>
</a>
@endcan
@can('update', $documentModel)
<a id="formSubmitClone"
href="{{ route('bo.documents.edit', ['tenant' => \tenant(), 'document' => $documentModel]) }}"
class="btn btn-sm btn-primary"
role="button"
title="{{ __('Modifier le :model', ['model' => __('models.classes.document')]) }}"
data-bs-toggle="tooltip">
<i class="fa-solid fa-pencil"></i>
</a>
@endcan
@can('delete', $documentModel)
<button class="btn btn-sm btn-danger"
title="{{ __('Supprimer le :model', ['model' => __('models.classes.document')]) }}"
data-bs-toggle="tooltip">
<i class="fa-solid fa-trash"></i>
</button>
@endcan
</div>
@can('delete', $documentModel)
</form>
@endcan
</div>
</td>
</tr>
@endforeach
@else
<tr>
<td colspan="{{ count($cols) + 1 }}" class="text-center">
<span class="h3">
{{ __('Aucun résultat pour les :models', ['models' => str(__('models.classes.document'))->plural()]) }}
</span>
</td>
</tr>
@endif
</tbody>
</table>
</div>