{{-- Saved-view toolbar: view selector, status tabs, quick search, ad-hoc filters, column chooser. Expects: $grid (SavedViewGrid), $views, $fieldOptions, $columns, $route (list route name), $page ('loandata'|'contact'). --}} @php $state = $grid->stateParams(); $isAdmin = auth()->user()->isAdmin(); $statusUrl = fn ($s) => route($route, array_filter(array_merge($state, ['status' => $s, 'view' => $grid->view?->id ?? '']))); @endphp
{{-- View selector --}}
@if ($isAdmin)
@if ($grid->view) Edit view @endif New view
@endif
@foreach (array_diff_key($state, ['q' => 1, 'f' => 1]) as $k => $v) @endforeach @foreach ($grid->filters as $i => $f) @endforeach
{{-- Status tabs --}}
@foreach (['' => 'All'] + \App\Services\Crm\SavedViewQuery::STATUSES as $key => $label) @continue($key === 'not_allocated' && $grid->module === 'activity,loandata') (string) $grid->status === (string) $key, 'text-ink-500 hover:text-ink-900 dark:hover:text-white' => (string) $grid->status !== (string) $key])>{{ $label }} @endforeach
{{-- Ad-hoc filters --}}
{{-- Column chooser --}}

Show columns

@foreach ($columns as $name => $c) @endforeach
{{-- Ad-hoc filter rows (ANDed with the view) --}}
@foreach (array_diff_key($state, ['f' => 1]) as $k => $v) @endforeach
@if ($grid->filters) Clear filters @endif
@if ($grid->view && $grid->viewCriteria)
View criteria: @foreach ($grid->viewCriteria as $c) @if (! $loop->first){{ $c['join'] }}@endif {{ \App\Services\Crm\SavedViewSchema::label($c['field']) }} {{ \App\Services\Crm\SavedViewSchema::OPERATORS[$c['op']] }} {{ \Illuminate\Support\Str::limit($c['value'], 40) }} @endforeach
@endif