Re-add search functionality

This commit is contained in:
Jonny Barnes 2023-04-11 21:16:06 +01:00
parent 92c0a517c2
commit 58c5a7d443
Signed by: jonny
SSH key fingerprint: SHA256:CTuSlns5U7qlD9jqHvtnVmfYV3Zwl2Z7WnJ4/dqOaL8
11 changed files with 297 additions and 19 deletions

View file

@ -0,0 +1,25 @@
<?php
namespace App\Http\Controllers;
use App\Models\Note;
use Illuminate\Http\Request;
use Illuminate\View\View;
class SearchController extends Controller
{
public function search(Request $request): View
{
$search = $request->input('q');
$notes = Note::search($search)
->paginate();
/** @var Note $note */
foreach ($notes as $note) {
$note->load('place', 'media', 'client');
}
return view('search', compact('search', 'notes'));
}
}

View file

@ -19,6 +19,7 @@ use Illuminate\Database\Eloquent\Relations\MorphMany;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Support\Facades\Cache;
use Jonnybarnes\IndieWeb\Numbers;
use Laravel\Scout\Searchable;
use League\CommonMark\Environment\Environment;
use League\CommonMark\Extension\Autolink\AutolinkExtension;
use League\CommonMark\Extension\CommonMark\CommonMarkCoreExtension;
@ -34,6 +35,7 @@ use Spatie\CommonMarkHighlighter\IndentedCodeRenderer;
class Note extends Model
{
use HasFactory;
use Searchable;
use SoftDeletes;
/**
@ -96,7 +98,7 @@ class Note extends Model
}
/**
* @return array<int, string>
* @return array<string, mixed>
*/
public function toSearchableArray(): array
{