with('success', session('success')) ->withErrors(session('error')); } public function create() { return view('admin.mapel.create'); } public function store(Request $request) { $request->validate([ 'nama_mapel' => 'required' ]); try { Mapel::create($request->all()); return redirect()->route('admin.mapel.index')->with('success', 'Data berhasil ditambahkan.'); } catch (\Exception $e) { Log::error('Gagal menambahkan mapel: ' . $e->getMessage()); return back()->withInput()->withErrors('Gagal menambahkan data.'); } } public function edit($id) { $mapel = Mapel::findOrFail($id); return view('admin.mapel.edit', compact('mapel')); } public function update(Request $request, $id) { $request->validate([ 'nama_mapel' => 'required' ]); try { Mapel::findOrFail($id)->update($request->all()); return redirect()->route('admin.mapel.index')->with('success', 'Data berhasil diupdate.'); } catch (\Exception $e) { Log::error('Gagal mengupdate mapel: ' . $e->getMessage()); return back()->withInput()->withErrors('Gagal mengupdate data.'); } } public function destroy($id) { try { Mapel::findOrFail($id)->delete(); return redirect()->route('admin.mapel.index')->with('success', 'Data berhasil dihapus.'); } catch (\Exception $e) { Log::error('Gagal menghapus mapel: ' . $e->getMessage()); return redirect()->route('admin.mapel.index')->withErrors('Gagal menghapus data.'); } } }