118 lines
5.0 KiB
PHP
118 lines
5.0 KiB
PHP
@extends('layout.app')
|
|
|
|
@section('content')
|
|
<div class="page-header">
|
|
<ol class="breadcrumb">
|
|
<li class="breadcrumb-item">Home</li>
|
|
<li class="breadcrumb-item active">Data Pengumuman</li>
|
|
</ol>
|
|
</div>
|
|
|
|
<div class="row gutters">
|
|
<div class="col-xl-12">
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<div class="mb-3 d-flex justify-content-between align-items-center">
|
|
<h5 class="mb-0">Data Pengumuman & Galeri Desa</h5>
|
|
<div>
|
|
<a href="{{ route('pengumuman.create') }}" class="btn btn-success">
|
|
<i class="icon-plus"></i> Tambah Pengumuman
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="table-responsive">
|
|
<table class="table table-bordered table-striped">
|
|
<thead>
|
|
<tr>
|
|
<th>No</th>
|
|
<th>Foto</th>
|
|
<th>Judul</th>
|
|
<th>Deskripsi</th>
|
|
<th>Status</th>
|
|
<th class="text-center">Aksi</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@forelse($pengumumans as $item)
|
|
<tr>
|
|
<td>{{ $loop->iteration }}</td>
|
|
<td>
|
|
<img src="{{ asset('storage/' . $item->foto) }}" alt="Foto" width="80" class="img-thumbnail">
|
|
</td>
|
|
<td>{{ $item->judul }}</td>
|
|
<td>{{ Str::limit($item->deskripsi, 50) }}</td>
|
|
<td>
|
|
<span class="badge {{ $item->status == 'aktif' ? 'badge-primary' : 'badge-secondary' }}">
|
|
{{ ucfirst($item->status) }}
|
|
</span>
|
|
</td>
|
|
<td>
|
|
<div class="d-flex justify-content-center gap-2">
|
|
{{-- Tombol Edit (Opsional, disiapkan rutenya nanti) --}}
|
|
<a href="{{ route('pengumuman.edit', $item->id) }}" class="btn btn-primary btn-sm" title="Edit Data">
|
|
<i class="icon-edit"></i>
|
|
</a>
|
|
|
|
<form action="{{ route('pengumuman.destroy', $item->id) }}" method="POST" id="delete-form-{{ $item->id }}">
|
|
@csrf
|
|
@method('DELETE')
|
|
<button type="button" class="btn btn-danger btn-sm btn-delete" data-id="{{ $item->id }}" title="Hapus Data">
|
|
<i class="icon-trash"></i>
|
|
</button>
|
|
</form>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
@empty
|
|
<tr>
|
|
<td colspan="6" class="text-center">Belum ada data pengumuman.</td>
|
|
</tr>
|
|
@endforelse
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
|
<script>
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
const deleteButtons = document.querySelectorAll('.btn-delete');
|
|
deleteButtons.forEach(button => {
|
|
button.addEventListener('click', function() {
|
|
const itemId = this.getAttribute('data-id');
|
|
Swal.fire({
|
|
title: 'Apakah Anda yakin?',
|
|
text: "Data dan foto pengumuman ini akan dihapus permanen!",
|
|
icon: 'warning',
|
|
showCancelButton: true,
|
|
confirmButtonColor: '#38d39f',
|
|
cancelButtonColor: '#d33',
|
|
confirmButtonText: 'Ya, Hapus!',
|
|
cancelButtonText: 'Batal'
|
|
}).then((result) => {
|
|
if (result.isConfirmed) {
|
|
document.getElementById(`delete-form-${itemId}`).submit();
|
|
}
|
|
});
|
|
});
|
|
});
|
|
|
|
@if(session('success'))
|
|
Swal.fire({
|
|
icon: 'success',
|
|
title: 'Berhasil!',
|
|
text: "{{ session('success') }}",
|
|
showConfirmButton: false,
|
|
timer: 2000,
|
|
timerProgressBar: true
|
|
});
|
|
@endif
|
|
});
|
|
</script>
|
|
@endsection
|