143 lines
5.7 KiB
PHP
143 lines
5.7 KiB
PHP
<div>
|
|
@php
|
|
$photoSections = [
|
|
'rute_menuju_lokasi' => [
|
|
'key' => 'rute_menuju_lokasi',
|
|
'name_prefix' => '',
|
|
'nested' => true,
|
|
],
|
|
'foto_rute_lainnya' => [
|
|
'key' => 'name_rute_lainnya',
|
|
'name_prefix' => '',
|
|
'nested' => false,
|
|
],
|
|
'foto_lingkungan' => [
|
|
'key' => 'foto_lingkungan',
|
|
'name_prefix' => '',
|
|
'nested' => true,
|
|
],
|
|
'single_photos' => [
|
|
'foto_basement' => 'Basement',
|
|
'foto_gerbang' => 'Gerbang',
|
|
'pendamping' => 'Pendamping',
|
|
],
|
|
'object_jaminan' => [
|
|
'key' => 'name_objek',
|
|
'name_prefix' => '',
|
|
'nested' => false,
|
|
],
|
|
'foto_lantai_unit' => [
|
|
'key' => 'name',
|
|
'name_prefix' => 'Foto Lantai',
|
|
'nested' => true,
|
|
],
|
|
];
|
|
|
|
$hasPhotos = false;
|
|
@endphp
|
|
|
|
<style>
|
|
.photo-container {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
justify-content: space-between;
|
|
margin-bottom: 20px;
|
|
}
|
|
.photo-item {
|
|
width: 100%; /* Adjust to fit two photos per row */
|
|
margin-bottom: 10px;
|
|
}
|
|
.photo-item img {
|
|
width: 80%;
|
|
height: auto;
|
|
border-radius: 5px;
|
|
}
|
|
</style>
|
|
|
|
@foreach ($photoSections as $sectionKey => $sectionConfig)
|
|
@if ($sectionKey === 'single_photos')
|
|
<div class="photo-container">
|
|
@foreach ($sectionConfig as $photoKey => $photoName)
|
|
@if (isset($formFoto[$photoKey]) && !empty($formFoto[$photoKey]))
|
|
@php
|
|
$imagePath = storage_path('app/public/' . $formFoto[$photoKey]);
|
|
$hasPhotos = true;
|
|
@endphp
|
|
<div class="photo-item border">
|
|
<h2 class="text-gray-600 font-semibold text-xl">
|
|
{{ $photoName }}
|
|
</h2>
|
|
@if ($statusLpj || file_exists($imagePath))
|
|
<img src="{{ $imagePath }}" alt="{{ $photoName }}" class="photo-image">
|
|
@endif
|
|
</div>
|
|
@endif
|
|
@endforeach
|
|
</div>
|
|
@else
|
|
@php
|
|
$sectionData = $formFoto[$sectionKey] ?? null;
|
|
@endphp
|
|
|
|
@if (!empty($sectionData))
|
|
@if ($sectionConfig['nested'])
|
|
@if (isset($sectionData[$sectionConfig['key']][0]))
|
|
<div class="photo-container">
|
|
@foreach ($sectionData[$sectionConfig['key']][0] as $index => $item)
|
|
@php
|
|
$imagePath = storage_path('app/public/' . $item['path']);
|
|
$hasPhotos = true;
|
|
@endphp
|
|
<div class="photo-item border">
|
|
<h2 class="text-gray-600 font-semibold text-xl">
|
|
{{ $sectionConfig['name_prefix']
|
|
? $sectionConfig['name_prefix'] . ' ' . ($index + 1)
|
|
: $item['name'] ?? 'Foto ' . ($index + 1) }}
|
|
</h2>
|
|
@if ($statusLpj || file_exists($imagePath))
|
|
<img src="{{ $imagePath }}" alt="{{ $item['path'] }}" class="photo-image">
|
|
@endif
|
|
</div>
|
|
@endforeach
|
|
</div>
|
|
@endif
|
|
@else
|
|
<div class="photo-container">
|
|
@foreach ($sectionData as $index => $item)
|
|
@php
|
|
$name = $item[$sectionConfig['key']] ?? '';
|
|
$photoPath =
|
|
$sectionKey === 'object_jaminan'
|
|
? $item['foto_objek'] ?? ''
|
|
: $item['foto_rute_lainnya'] ?? '';
|
|
|
|
$imagePath = storage_path('app/public/' . $photoPath);
|
|
@endphp
|
|
|
|
@if (!empty($name) || !empty($photoPath))
|
|
@php $hasPhotos = true; @endphp
|
|
<div class="photo-item border">
|
|
@if (!empty($name))
|
|
<h2 class="text-gray-600 font-semibold text-xl">
|
|
{{ $name }}
|
|
</h2>
|
|
@endif
|
|
@if ($statusLpj || (file_exists($imagePath) && !empty($photoPath)))
|
|
<img src="{{ $imagePath }}" alt="{{ $name ?: 'Foto' }}" class="photo-image">
|
|
@endif
|
|
</div>
|
|
@endif
|
|
@endforeach
|
|
</div>
|
|
@endif
|
|
@endif
|
|
@endif
|
|
@endforeach
|
|
|
|
@if (!$hasPhotos)
|
|
<div class="text-center py-6 bg-gray-100 rounded-lg">
|
|
<p class="text-gray-500 italic">Tidak ada foto yang tersedia</p>
|
|
</div>
|
|
@endif
|
|
</div>
|