MIF_E31210181/app/Http/Controllers/IndexController.php

50 lines
1.3 KiB
PHP

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\ProjectMahasiswa;
use App\Models\CarouselImage;
class IndexController extends Controller
{
public function index(Request $request)
{
$projects = ProjectMahasiswa::query();
$validatedData = $request->validate([
'tahun' => 'required',
'kategori' => 'required'
]);
// Tangkap nilai pencarian dari permintaan HTTP
$tahun = $validatedData['tahun'];
$kategori = $validatedData['kategori'];
// Tambahkan kondisi pencarian berdasarkan tahun jika ada
if ($tahun) {
$projects->where('angkatan', $tahun);
}
// Tambahkan kondisi pencarian berdasarkan kategori jika ada
if ($kategori) {
$projects->where('kategori', $kategori);
}
// Dapatkan hasil pencarian proyek
$projects = $projects->get();
// Dapatkan data banner
$banners = CarouselImage::all();
// Jika permintaan adalah AJAX, kembalikan tampilan parsial
if ($request->ajax()) {
return view('partials.project-list', compact('projects'));
}
// Jika bukan permintaan AJAX, kembalikan tampilan penuh
return view('index', compact('projects', 'banners'));
}
}