validate( ['nama_divisi' => 'required|string'], ['nama_divisi.required' => 'Nama divisi harus diisi.'] ); $data = DivisiGuru::create($validate); return redirect('/admin/settings/divisi-guru')->with('success', 'Divisi guru berhasil ditambahkan.'); } public function divisiGuruUpdate(Request $request, $id){ $data = DivisiGuru::where('id', $id)->first(); $validate = $request->validate( ['nama_divisi' => 'required|string'], ['nama_divisi.required' => 'Nama divisi harus diisi.'] ); $data->update($validate); return redirect('/admin/settings/divisi-guru')->with('success', 'Divisi guru berhasil diedit.'); } public function divisiGuruDestroy($id){ $data = DivisiGuru::where('id', $id)->first(); $data->delete(); return redirect('/admin/settings/divisi-guru')->with('success', 'Divisi guru berhasil dihapus.'); } // Master Sesi public function masterSesiIndex(){ $data = Sesi::orderBy('id', 'asc')->get(); return view('admin.pages.settings.master-sesi', compact('data')); } public function masterSesiStore(Request $request){ $validate = $request->validate([ 'nama_sesi' => 'required|string|max:255', 'jam' => 'required|string|max:255', ], [ 'nama_sesi.required' => 'Nama sesi harus diisi.', 'jam.required' => 'Jam sesi harus diisi.', ]); Sesi::create($validate); return redirect('/admin/settings/master-sesi')->with('success', 'Master sesi berhasil ditambahkan.'); } public function masterSesiUpdate(Request $request, $id){ $sesi = Sesi::findOrFail($id); $validate = $request->validate([ 'nama_sesi' => 'required|string|max:255', 'jam' => 'required|string|max:255', ], [ 'nama_sesi.required' => 'Nama sesi harus diisi.', 'jam.required' => 'Jam sesi harus diisi.', ]); $sesi->update($validate); return redirect('/admin/settings/master-sesi')->with('success', 'Master sesi berhasil diperbarui.'); } public function masterSesiDestroy($id){ $sesi = Sesi::findOrFail($id); $sesi->delete(); return redirect('/admin/settings/master-sesi')->with('success', 'Master sesi berhasil dihapus.'); } // Master Hari public function masterHariIndex(){ $data = Hari::orderBy('id', 'asc')->get(); return view('admin.pages.settings.master-hari', compact('data')); } public function masterHariStore(Request $request){ $validate = $request->validate([ 'nama_hari' => 'required|string|max:255', ], [ 'nama_hari.required' => 'Nama hari harus diisi.', ]); Hari::create($validate); return redirect('/admin/settings/master-hari')->with('success', 'Master hari berhasil ditambahkan.'); } public function masterHariUpdate(Request $request, $id){ $hari = Hari::findOrFail($id); $validate = $request->validate([ 'nama_hari' => 'required|string|max:255', ], [ 'nama_hari.required' => 'Nama hari harus diisi.', ]); $hari->update($validate); return redirect('/admin/settings/master-hari')->with('success', 'Master hari berhasil diperbarui.'); } public function masterHariDestroy($id){ $hari = Hari::findOrFail($id); $hari->delete(); return redirect('/admin/settings/master-hari')->with('success', 'Master hari berhasil dihapus.'); } public function ketersediaanIndex() { $setting = \App\Models\KetersediaanSetting::getRecord(); return view('admin.pages.settings.ketersediaan', compact('setting')); } public function ketersediaanUpdate(Request $request) { $setting = \App\Models\KetersediaanSetting::getRecord(); $setting->update([ 'lock_edit' => $request->has('lock_edit') ? true : false, ]); return redirect()->back()->with('success', 'Pengaturan ketersediaan mengajar berhasil disimpan.'); } public function exportMasterData() { return \Maatwebsite\Excel\Facades\Excel::download(new \App\Exports\MasterDataExport, 'master_data_robotku_' . date('Y-m-d') . '.xlsx'); } }