]> BookStack Code Mirror - bookstack/blob - resources/views/search/all.blade.php
aa7ae0aff813cbd09a9b762d34c812acc3bee366
[bookstack] / resources / views / search / all.blade.php
1 @extends('layouts.simple')
2
3 @section('body')
4     <div class="container mt-xl" id="search-system">
5
6         <div class="grid right-focus reverse-collapse gap-xl">
7             <div>
8                 <div>
9                     <h5>{{ trans('entities.search_advanced') }}</h5>
10
11                     @php
12                         $filterMap = $options->filters->toValueMap();
13                     @endphp
14                     <form method="get" action="{{ url('/search') }}">
15                         <h6>{{ trans('entities.search_terms') }}</h6>
16                         <input type="text" name="search" value="{{ implode(' ', $options->searches->toValueArray()) }}">
17
18                         <h6>{{ trans('entities.search_content_type') }}</h6>
19                         <div class="form-group">
20
21                             <?php
22                             $types = explode('|', $filterMap['type'] ?? '');
23                             $hasTypes = $types[0] !== '';
24                             ?>
25                             @include('search.parts.type-filter', ['checked' => !$hasTypes || in_array('page', $types), 'entity' => 'page', 'transKey' => 'page'])
26                             @include('search.parts.type-filter', ['checked' => !$hasTypes || in_array('chapter', $types), 'entity' => 'chapter', 'transKey' => 'chapter'])
27                             <br>
28                                 @include('search.parts.type-filter', ['checked' => !$hasTypes || in_array('book', $types), 'entity' => 'book', 'transKey' => 'book'])
29                                 @include('search.parts.type-filter', ['checked' => !$hasTypes || in_array('bookshelf', $types), 'entity' => 'bookshelf', 'transKey' => 'shelf'])
30                         </div>
31
32                         <h6>{{ trans('entities.search_exact_matches') }}</h6>
33                         @include('search.parts.term-list', ['type' => 'exact', 'currentList' => $options->exacts->toValueArray()])
34
35                         <h6>{{ trans('entities.search_tags') }}</h6>
36                         @include('search.parts.term-list', ['type' => 'tags', 'currentList' => $options->tags->toValueArray()])
37
38                         @if(!user()->isGuest())
39                             <h6>{{ trans('entities.search_options') }}</h6>
40
41                             @component('search.parts.boolean-filter', ['filters' => $filterMap, 'name' => 'viewed_by_me', 'value' => null])
42                                 {{ trans('entities.search_viewed_by_me') }}
43                             @endcomponent
44                             @component('search.parts.boolean-filter', ['filters' => $filterMap, 'name' => 'not_viewed_by_me', 'value' => null])
45                                 {{ trans('entities.search_not_viewed_by_me') }}
46                             @endcomponent
47                             @component('search.parts.boolean-filter', ['filters' => $filterMap, 'name' => 'is_restricted', 'value' => null])
48                                 {{ trans('entities.search_permissions_set') }}
49                             @endcomponent
50                             @component('search.parts.boolean-filter', ['filters' => $filterMap, 'name' => 'created_by', 'value' => 'me'])
51                                 {{ trans('entities.search_created_by_me') }}
52                             @endcomponent
53                             @component('search.parts.boolean-filter', ['filters' => $filterMap, 'name' => 'updated_by', 'value' => 'me'])
54                                 {{ trans('entities.search_updated_by_me') }}
55                             @endcomponent
56                             @component('search.parts.boolean-filter', ['filters' => $filterMap, 'name' => 'owned_by', 'value' => 'me'])
57                                 {{ trans('entities.search_owned_by_me') }}
58                             @endcomponent
59                         @endif
60
61                         <h6>{{ trans('entities.search_date_options') }}</h6>
62                         @include('search.parts.date-filter', ['name' => 'updated_after', 'filters' => $filterMap])
63                         @include('search.parts.date-filter', ['name' => 'updated_before', 'filters' => $filterMap])
64                         @include('search.parts.date-filter', ['name' => 'created_after', 'filters' => $filterMap])
65                         @include('search.parts.date-filter', ['name' => 'created_before', 'filters' => $filterMap])
66
67                         @foreach($options->getHiddenInputValuesByFieldName() as $fieldName => $value)
68                             <input type="hidden" name="{{ $fieldName }}" value="{{ $value }}">
69                         @endforeach
70
71                         <button type="submit" class="button">{{ trans('entities.search_update') }}</button>
72                     </form>
73
74                 </div>
75             </div>
76             <div>
77                 <div class="card content-wrap">
78                     <h1 class="list-heading">{{ trans('entities.search_results') }}</h1>
79
80                     <form action="{{ url('/search') }}" method="GET"  class="search-box flexible hide-over-l">
81                         <input value="{{$searchTerm}}" type="text" name="term" placeholder="{{ trans('common.search') }}">
82                         <button type="submit"
83                                 aria-label="{{ trans('common.search') }}"
84                                 tabindex="-1">@icon('search')</button>
85                     </form>
86
87                     <h6 class="text-muted">{{ trans_choice('entities.search_total_results_found', $totalResults, ['count' => $totalResults]) }}</h6>
88                     <div class="book-contents">
89                         @include('entities.list', ['entities' => $entities, 'showPath' => true, 'showTags' => true])
90                     </div>
91
92                     @if($hasNextPage)
93                         <div class="text-right mt-m">
94                             <a href="{{ $nextPageLink }}" class="button outline">{{ trans('entities.search_more') }}</a>
95                         </div>
96                     @endif
97                 </div>
98             </div>
99         </div>
100
101     </div>
102 @stop