diff options
| author | horus | 2019-05-27 15:59:42 +0200 |
|---|---|---|
| committer | horus | 2019-05-27 15:59:42 +0200 |
| commit | ef6738379ea5d3e1d9d66bd14289bca788c10337 (patch) | |
| tree | 09160b99d72f01aa62120a06a623701713c13216 /resources | |
| parent | d2154e5e9e06e170f197d16a5fbb99d58deef5f3 (diff) | |
| download | kategorischeraperitif-ef6738379ea5d3e1d9d66bd14289bca788c10337.tar.gz | |
Add nicer filter buttons.
Diffstat (limited to 'resources')
| -rw-r--r-- | resources/views/listoffer.blade.php | 2 | ||||
| -rw-r--r-- | resources/views/search.blade.php | 2 | ||||
| -rw-r--r-- | resources/views/snippets/filterbuttons.blade.php | 91 |
3 files changed, 93 insertions, 2 deletions
diff --git a/resources/views/listoffer.blade.php b/resources/views/listoffer.blade.php index db9cf80..1e47f99 100644 --- a/resources/views/listoffer.blade.php +++ b/resources/views/listoffer.blade.php @@ -44,7 +44,7 @@ <p> {{ $header_text }} </p> - @include('snippets.sortbuttons') + @include('snippets.filterbuttons') </div> </div> </header><!-- .page-header --> diff --git a/resources/views/search.blade.php b/resources/views/search.blade.php index dec190b..2b44eef 100644 --- a/resources/views/search.blade.php +++ b/resources/views/search.blade.php @@ -32,7 +32,7 @@ if ( $data->count() ) { <p> Sie haben nach <strong>{{ ucwords($search_phrase) }}</strong> gesucht ({{$count}} Treffer) </p> - @include('snippets.sortbuttons') + @include('snippets.filterbuttons') <?php } else { ?> diff --git a/resources/views/snippets/filterbuttons.blade.php b/resources/views/snippets/filterbuttons.blade.php new file mode 100644 index 0000000..9f18f9a --- /dev/null +++ b/resources/views/snippets/filterbuttons.blade.php @@ -0,0 +1,91 @@ +<?php + +$filter = Request::Input('sort'); +$order = Request::Input('order'); +$show_filter = false; +$sortby = ''; // HTML select element +$orderby = ''; // HTML select element + +$possible_filter = array( + "Preis" => "price", + "Name" => "name", + "Shop" => "shop", + "Preisnachlass" => "procent", + "Aktualität" => "time" +); + +if ( in_array($filter, $possible_filter) ) { + $filter = array_search( $filter, $possible_filter ); + $show_filter = true; +} else { + $filter = ""; +} + +foreach( $possible_filter as $name => $value ) { + $sortby .= "<option "; + if (( $filter == "" && "time" == $value ) || ( $filter != "" && $name == $filter )) { + $sortby .= " selected "; + } + $sortby .= " value='" . $value . "'>". $name . "</option>"; +} + +if ( "desc" == $order ) { + $orderby = + '<option selected value="desc">Absteigend</option> + <option value="asc">Aufsteigend</option>'; + $order = "Absteigend"; +} else { + $orderby = + '<option selected value="asc">Aufsteigend</option> + <option value="desc">Absteigend</option>'; + $order = "Aufsteigend"; +} + +$hidden_search_options = array(); +$search_type = Request::Input('type'); +if ( "" != $search_type ) { + $hidden_search_options['type'] = $search_type; +} +$search_phrase = Request::Input('q'); +if ( "" != $search_phrase ) { + $hidden_search_options['q'] = $search_phrase;; +} +?> +<p> + <button class="btn btn-white" type="button" data-toggle="collapse" data-target="#collapsefilter" aria-expanded="false" aria-controls="collapsefilter"> + Filter Anzeigen + </button> + <a class="btn btn-rss btn-primary text-white pull-right" href={{ secure_url($rss_feed) }} title="Link zum RSS-Feed" onclick="javascript:_paq.push(['trackEvent', 'Sort-Button', 'RSS-Feed']);"> + <span class="oi oi-rss-alt" title="Link zum RSS-Feed" aria-hidden="true"></span> + </a> +</p> + +<div class="collapse" id="collapsefilter"> + +<form method="GET" action="?"> +<?php +if ( ! empty($hidden_search_options) ) { + foreach( $hidden_search_options as $key => $value ) { +?> + <input value="{{$value}}" name="{{$key}}" style="display:none"> +<?php + } +} +?> + <div class="row"> + <div class="col"> + <label for="sort">Sortieren nach: <?php if ( $show_filter ) { ?><strong>{{ $filter . " (" . $order . ")" }} </strong><?php }?></label> + <select id="sort" name="sort" class="form-control" onchange="this.form.submit();"> + {{!! $sortby !!}} + </select> + </div> + <div class="col"> + <label for="order">Aufsteigend:</label> + <select id="order" name="order" class="form-control" onchange="this.form.submit();"> + {{!! $orderby !!}} + </select> + </div> + </div> +</form> + +</div> <!-- .collapse --> |
