MIF_E31222313/app/Http/Controllers/KurikulumController.php

97 lines
2.4 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\Kurikulum;
use Illuminate\Http\Request;
use Barryvdh\DomPDF\Facade\Pdf;
class KurikulumController extends Controller
{
public function kurikulum()
{
$kurikulums = Kurikulum::all();
return view('admin.kurikulum', compact('kurikulums'));
}
public function tambahkurikulum(Request $request)
{
$request->validate([
'nama' => 'required',
]);
$nama = $request->input('nama');
// Cek apakah ada nama yang duplikat
$duplikatNama = Kurikulum::where('nama', $nama)->exists();
if ($duplikatNama) {
toastr()->error('Kurikulum dengan nama tersebut sudah ada.');
return redirect()->back();
}
$kurikulum = new Kurikulum();
$kurikulum->nama = $nama;
if ($kurikulum->save()) {
toastr()->success('Data kurikulum berhasil ditambahkan.');
} else {
toastr()->error('Gagal menambahkan data kurikulum.');
}
return redirect()->route('kurikulum');
}
public function updatekurikulum(Request $request, $id)
{
$request->validate([
'nama' => 'required',
]);
$kurikulum = Kurikulum::findOrFail($id);
// Ambil nilai dari request
$nama = $request->input('nama');
// Cek apakah ada nama yang duplikat
$duplikatNama = Kurikulum::where('nama', $nama)
->where('id', '!=', $id)
->exists();
if ($duplikatNama) {
toastr()->error('Kurikulum dengan nama tersebut sudah ada.');
return redirect()->back();
}
$kurikulum->nama = $nama;
if ($kurikulum->save()) {
toastr()->success('Data kurikulum berhasil diperbarui.');
} else {
toastr()->error('Gagal memperbarui data kurikulum.');
}
return redirect()->route('kurikulum')->with('reload', true);
}
public function hapuskurikulum($id)
{
$kurikulum = Kurikulum::findOrFail($id);
$kurikulum->delete();
toastr()->success('Data kurikulum berhasil dihapus.');
return redirect()->route('kurikulum');
}
public function downloadkurikulum()
{
// Ambil data sekolah dari database
$kurikulums = Kurikulum::all();
$pdf = Pdf::loadView('admin.kurikulumpdf', compact('kurikulums'));
// Download file PDF
return $pdf->download('data_kurikulum.pdf');
}
}