From eae9f9fd28e9a534e22c4a73310a2fe9daf2b8e7 Mon Sep 17 00:00:00 2001 From: MuzakkiABBAUF Date: Tue, 2 Sep 2025 10:45:15 +0700 Subject: [PATCH] fix kategori --- .../Http/Controllers/KategoriController.php | 45 +++++++---- .../views/admin/kategori/index.blade.php | 74 ++++++++++--------- backend/resources/views/layouts/app.blade.php | 1 + 3 files changed, 68 insertions(+), 52 deletions(-) diff --git a/backend/app/Http/Controllers/KategoriController.php b/backend/app/Http/Controllers/KategoriController.php index 17fbbbf..9620726 100644 --- a/backend/app/Http/Controllers/KategoriController.php +++ b/backend/app/Http/Controllers/KategoriController.php @@ -1,29 +1,32 @@ json($kategori, 200); } + // Simpan kategori baru public function store(Request $request) { $request->validate([ - 'nama' => 'required', - 'deskripsi' => 'nullable', + 'nama' => 'required|string|max:255', + 'deskripsi' => 'nullable|string', 'foto' => 'nullable|image|mimes:jpg,jpeg,png|max:2048' ]); @@ -32,35 +35,45 @@ class KategoriController extends Controller $data['foto'] = $request->file('foto')->store('kategori', 'public'); } - $kategori = Kategori::create($data); + Kategori::create($data); - return response()->json($kategori, 201); + // Jika request berasal dari form admin → redirect + return redirect()->route('admin.kategori.index') + ->with('success', 'Kategori berhasil ditambahkan!'); } + // Update kategori public function update(Request $request, Kategori $kategori) { $request->validate([ - 'nama' => 'required', - 'deskripsi' => 'nullable', + 'nama' => 'required|string|max:255', + 'deskripsi' => 'nullable|string', 'foto' => 'nullable|image|mimes:jpg,jpeg,png|max:2048' ]); $data = $request->all(); if ($request->hasFile('foto')) { - if ($kategori->foto) Storage::disk('public')->delete($kategori->foto); + if ($kategori->foto) { + Storage::disk('public')->delete($kategori->foto); + } $data['foto'] = $request->file('foto')->store('kategori', 'public'); } $kategori->update($data); - return response()->json($kategori, 200); + return redirect()->route('admin.kategori.index') + ->with('success', 'Kategori berhasil diperbarui!'); } + // Hapus kategori public function destroy(Kategori $kategori) { - if ($kategori->foto) Storage::disk('public')->delete($kategori->foto); + if ($kategori->foto) { + Storage::disk('public')->delete($kategori->foto); + } $kategori->delete(); - return response()->json(['message' => 'Kategori berhasil dihapus'], 200); + return redirect()->route('admin.kategori.index') + ->with('success', 'Kategori berhasil dihapus!'); } } diff --git a/backend/resources/views/admin/kategori/index.blade.php b/backend/resources/views/admin/kategori/index.blade.php index 8ef96f5..a5ce0ad 100644 --- a/backend/resources/views/admin/kategori/index.blade.php +++ b/backend/resources/views/admin/kategori/index.blade.php @@ -55,42 +55,6 @@ - - - @empty Belum ada kategori @@ -132,4 +96,42 @@ + + +@foreach ($kategori as $item) + +@endforeach @endsection diff --git a/backend/resources/views/layouts/app.blade.php b/backend/resources/views/layouts/app.blade.php index ab227c2..8d3e8f4 100644 --- a/backend/resources/views/layouts/app.blade.php +++ b/backend/resources/views/layouts/app.blade.php @@ -7,6 +7,7 @@ @yield('title', 'Admin Panel') +