Undangan/backend/app/Http/Controllers/TemplateController.php
2025-09-08 15:55:58 +07:00

64 lines
1.9 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Models\Template;
use App\Models\Kategori;
use App\Models\Fitur;
use Illuminate\Http\Request;
class TemplateController extends Controller
{
public function index()
{
$templates = Template::with(['kategori','fitur'])->get();
return view('templates.index', compact('templates'));
}
public function create()
{
$kategoris = Kategori::all();
$fiturs = Fitur::all();
return view('templates.create', compact('kategoris', 'fiturs'));
}
public function store(Request $request)
{
$data = $request->validate([
'nama_template' => 'required|string|max:255',
'kategori_id' => 'required|exists:kategoris,id',
'fitur_id' => 'required|exists:fiturs,id',
'foto' => 'nullable|string',
]);
Template::create($data);
return redirect()->route('templates.index')->with('success', 'Template berhasil ditambahkan!');
}
public function edit(Template $template)
{
$kategoris = Kategori::all();
$fiturs = Fitur::all();
return view('templates.edit', compact('template','kategoris','fiturs'));
}
public function update(Request $request, Template $template)
{
$data = $request->validate([
'nama_template' => 'required|string|max:255',
'kategori_id' => 'required|exists:kategoris,id',
'fitur_id' => 'required|exists:fiturs,id',
'foto' => 'nullable|string',
]);
$template->update($data);
return redirect()->route('templates.index')->with('success', 'Template berhasil diperbarui!');
}
public function destroy(Template $template)
{
$template->delete();
return redirect()->route('templates.index')->with('success', 'Template berhasil dihapus!');
}
}