Files
2026-08-08 18:27:38 +08:00

34 lines
921 B
PHP

<?php
namespace App\Http\Controllers;
use App\Models\GlossaryTerm;
use Illuminate\Http\Request;
use Illuminate\View\View;
class GlossaryController extends Controller
{
public function index(Request $request): View
{
$q = trim((string) $request->query('q', ''));
$terms = GlossaryTerm::ordered()
->when($q, function ($query) use ($q) {
$query->where(function ($sub) use ($q) {
$sub->where('term', 'like', "%{$q}%")
->orWhere('definition', 'like', "%{$q}%")
->orWhere('aliases', 'like', "%{$q}%");
});
})
->paginate(20)
->withQueryString();
return view('glossary.index', compact('terms', 'q'));
}
public function show(GlossaryTerm $glossaryTerm): View
{
return view('glossary.show', compact('glossaryTerm'));
}
}