cookie("sort"); } switch ($sort_by) { case("price"): $sort_by = "discounted_price"; break; case("discounted_price"): $sort_by = "discounted_price"; break; case("name"): $sort_by = "name"; break; case("shop"): $sort_by = "shop"; break; case("procent"): $sort_by = "procent"; break; case("time"): $sort_by = "created_at"; break; case("created_at"): $sort_by = "created_at"; break; default: $sort_by = "created_at"; break; } Cookie::queue(Cookie::make('sort', $sort_by, 60*24)); $order_by = $request->input("order"); if ( is_null($order_by) ) { $order_by = $request->cookie("order"); } if ( "desc" != $order_by ) { $order_by = "asc"; } Cookie::queue(Cookie::make('order', $order_by, 60*24)); /* * Database query */ $view_name = \Request::route()->getName(); $data = DB::table($view_name . '_view')->orderBy($sort_by, $order_by)->simplePaginate(20); $rss_feed = "/" . $view_name . "/feed/"; $query_string = ""; $query_params = Input::get(); foreach( $query_params as $key => $value) { $query_string .= "&" . $key . "=" . $value; } if ( "" != $query_string ) { $query_string = ltrim($query_string, "&"); $rss_feed .= "?" . $query_string; } if ( "misc" == $view_name ) { $view_name = "Andere Angebote"; if ( $data->count() ) { $title = "andere Angebote"; } else { $title = "anderen Angebote"; } } else if ( "all" == $view_name ) { $view_name = "Alle Angebote"; if ( $data->count() ) { $title = "alle Angebote"; } else { $title = "Angebote"; } } else { $title = ucfirst($view_name) . "-Angebote"; } /* * For strftime() in view. */ setlocale(LC_TIME, 'de_DE.utf8'); return view('offer', ['data' => $data, 'spirit_type' => $view_name, 'rss_feed' => $rss_feed, 'title' => $title ]); } }