MIF_E31221259/app/Http/Controllers/Admin/MapelController.php

90 lines
2.3 KiB
PHP

<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use App\Models\MapelUn;
use Illuminate\Http\Request;
class MapelController extends Controller
{
/**
* Display a listing of the mapels.
*/
public function index()
{
$mapels = MapelUn::all(); // Ambil semua mapel
return view('admin.mapel', compact('mapels')); // Kirim ke view 'admin.mapel'
}
/**
* Show the form for creating a new mapel.
*/
public function create()
{
return view('admin.mapels.create'); // Form untuk membuat mapel baru
}
/**
* Store a newly created mapel in storage.
*/
public function store(Request $request)
{
// Validasi input
$request->validate([
'nama' => 'required|string|max:255',
]);
// Buat dan simpan mapel baru
MapelUn::create([
'nama' => $request->nama,
]);
// Redirect ke halaman index dengan pesan sukses
return redirect()->route('admin.mapels.index')->with('success', 'Mapel created successfully.');
}
/**
* Show the form for editing the specified mapel.
*/
public function edit($id)
{
$mapel = MapelUn::findOrFail($id); // Ambil mapel berdasarkan ID
return view('admin.mapel', compact('mapel')); // Kirim ke view 'admin.mapel'
}
/**
* Update the specified mapel in storage.
*/
public function update(Request $request, $id)
{
// Validasi input
$request->validate([
'nama' => 'required|string|max:255',
]);
// Update mapel berdasarkan ID
$mapel = MapelUn::findOrFail($id);
$mapel->update([
'nama' => $request->nama,
]);
// Redirect ke halaman index dengan pesan sukses
return redirect()->route('admin.mapels.index')->with('success', 'Mapel updated successfully.');
}
/**
* Remove the specified mapel from storage.
*/
public function destroy($id)
{
// Hapus mapel berdasarkan ID
$mapel = MapelUn::findOrFail($id);
$mapel->delete();
// Redirect ke halaman index dengan pesan sukses
return redirect()->route('admin.mapels.index')->with('success', 'Mapel deleted successfully.');
}
}