23 lines
905 B
PHP
23 lines
905 B
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Services\Tenant\TenantContext;
|
|
use Illuminate\View\View;
|
|
|
|
class PublicBusinessController extends Controller
|
|
{
|
|
public function __invoke(TenantContext $tenant): View
|
|
{
|
|
$business = $tenant->business();
|
|
$business?->load(['locations', 'galleryImages' => fn ($query) => $query->where('isActive', true)->orderBy('displayOrder'), 'reviews' => fn ($query) => $query->where('isHidden', false)->latest('publishedAt')->limit(6), 'staff.user', 'hours']);
|
|
$categories = $business?->serviceCategories()
|
|
->where('isActive', true)
|
|
->with(['services' => fn ($query) => $query->where('isActive', true)->where('allowOnlineBooking', true)->orderBy('displayOrder')])
|
|
->orderBy('displayOrder')
|
|
->get() ?? collect();
|
|
|
|
return view('public.business', compact('business', 'categories'));
|
|
}
|
|
}
|