3 namespace App\Http\Controllers;
5 use App\Models\Technique;
6 use Illuminate\Database\Eloquent\Builder;
7 use Illuminate\Http\Request;
9 class TechniqueController extends Controller
12 public function search(Request $request) {
13 $validatedData = $request->validate([
14 'phrase' => 'string|nullable',
17 $techs = Technique::where('index', '=', 1);
19 if (!empty($validatedData['phrase'])) {
20 $search = $validatedData['phrase'];
21 $techs = $techs->where(function (Builder $query) use ($search) {
22 $query->where('title', 'LIKE', '%'.$search.'%')
23 ->orWhere('short', 'LIKE', '%'.$search.'%');
27 return $techs->get()->toJson();
30 public function single(Request $request, Technique $tech) {
31 $this->authorize('view', $tech);
32 $tech->load('chapters');
33 return $tech->toJson();