129 lines
5.5 KiB
PHP
129 lines
5.5 KiB
PHP
@extends('layout.app')
|
|
|
|
@section('title', 'Relasi Makanan')
|
|
|
|
@include('admin.shared.admin-styles')
|
|
|
|
@section('content')
|
|
<div class="admin-container container-fluid">
|
|
<!-- Page Header -->
|
|
<div class="page-header animate-fade-in">
|
|
<div class="row align-items-center">
|
|
<div class="col-12">
|
|
<h3 class="mb-2 text-white">
|
|
<i class="fas fa-link me-2"></i>Relasi Makanan
|
|
</h3>
|
|
<nav aria-label="breadcrumb">
|
|
<ol class="breadcrumb mb-0">
|
|
<li class="breadcrumb-item"><a href="{{ route('admindash') }}" class="text-white-50">Dashboard</a></li>
|
|
<li class="breadcrumb-item active text-white" aria-current="page">Relasi Makanan</li>
|
|
</ol>
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<div class="admin-card animate-fade-in">
|
|
<div class="card-body">
|
|
<div class="d-flex justify-content-between align-items-center mb-4">
|
|
<h5 class="card-title mb-0">
|
|
<i class="fas fa-list me-2"></i>Daftar Relasi
|
|
</h5>
|
|
<a href="{{ route('relasi.create') }}" class="admin-btn btn-primary">
|
|
<i class="fas fa-plus me-2"></i>Tambah Relasi
|
|
</a>
|
|
</div>
|
|
|
|
<div class="table-responsive">
|
|
<table class="admin-table">
|
|
<thead>
|
|
<tr>
|
|
<th>No</th>
|
|
<th>Makanan</th>
|
|
<th>Komponen</th>
|
|
<th>Waktu Makan</th>
|
|
<th>Status</th>
|
|
<th class="text-center">Aksi</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@forelse($relasis as $index => $relasi)
|
|
<tr>
|
|
<td>{{ $index + 1 }}</td>
|
|
<td>
|
|
<div class="d-flex align-items-center">
|
|
{{ $relasi->makanan->nama }}
|
|
</div>
|
|
</td>
|
|
<td>{{ $relasi->komponen->nama }}</td>
|
|
<td>{{ $relasi->waktuMakan->nama }}</td>
|
|
<td>
|
|
<span class="admin-badge {{ $relasi->status ? 'bg-success' : 'bg-danger' }}">
|
|
{{ $relasi->status ? 'Aktif' : 'Tidak Aktif' }}
|
|
</span>
|
|
</td>
|
|
<td class="text-center">
|
|
<a href="{{ route('relasi.edit', $relasi->id) }}"
|
|
class="admin-btn btn-warning btn-sm me-2">
|
|
<i class="fas fa-edit"></i>
|
|
</a>
|
|
<form action="{{ route('relasi.destroy', $relasi->id) }}"
|
|
method="POST"
|
|
class="d-inline delete-form"
|
|
onsubmit="return confirm('Apakah Anda yakin ingin menghapus data ini?');">
|
|
@csrf
|
|
@method('DELETE')
|
|
<button type="submit" class="admin-btn btn-danger btn-sm">
|
|
<i class="fas fa-trash"></i>
|
|
</button>
|
|
</form>
|
|
</td>
|
|
</tr>
|
|
@empty
|
|
<tr>
|
|
<td colspan="6" class="text-center py-5">
|
|
<i class="fas fa-folder-open fa-3x text-muted mb-3"></i>
|
|
<p class="text-muted">Tidak ada data relasi</p>
|
|
</td>
|
|
</tr>
|
|
@endforelse
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
@if($relasis->hasPages())
|
|
<div class="d-flex justify-content-center mt-4">
|
|
{{ $relasis->links() }}
|
|
</div>
|
|
@endif
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@endsection
|
|
|
|
@push('scripts')
|
|
<script>
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
const animateElements = document.querySelectorAll('.animate-fade-in');
|
|
const observer = new IntersectionObserver((entries) => {
|
|
entries.forEach(entry => {
|
|
if (entry.isIntersecting) {
|
|
entry.target.style.opacity = 1;
|
|
entry.target.style.transform = 'translateY(0)';
|
|
}
|
|
});
|
|
});
|
|
|
|
animateElements.forEach(element => {
|
|
element.style.opacity = 0;
|
|
element.style.transform = 'translateY(20px)';
|
|
observer.observe(element);
|
|
});
|
|
});
|
|
</script>
|
|
@endpush
|