summaryrefslogtreecommitdiff
path: root/site/app
diff options
context:
space:
mode:
authorMax2018-02-10 01:59:26 +0100
committerMax2018-02-10 01:59:26 +0100
commit09ab27a6d19883317f2fc185b57b971b8c780069 (patch)
tree86ae7b2e8da2bc53c3e86574ea28e869d0efb4dc /site/app
parent374defdff5502123d84e2e48fdd4faa4636447da (diff)
downloadalkobote-09ab27a6d19883317f2fc185b57b971b8c780069.tar.gz
Major improvements. (website)
Diffstat (limited to 'site/app')
-rw-r--r--site/app/Http/Controllers/IndexController.php30
-rw-r--r--site/app/Http/Controllers/OfferController.php (renamed from site/app/Http/Controllers/WhiskyController.php)14
-rw-r--r--site/app/Libraries/TemplateFunction.php26
3 files changed, 65 insertions, 5 deletions
diff --git a/site/app/Http/Controllers/IndexController.php b/site/app/Http/Controllers/IndexController.php
index 745a023..c0056d9 100644
--- a/site/app/Http/Controllers/IndexController.php
+++ b/site/app/Http/Controllers/IndexController.php
@@ -14,8 +14,34 @@ class IndexController extends Controller {
*/
public function showPage(Request $request) {
- //$data = DB::table('angebote')->orderBy('quotient', 'DESC')->limit(100)->get();
- $data = DB::table('angebote')->orderBy('quotient', 'DESC')->limit(100)->simplePaginate(20);
+
+ $views = array("whisky", "wodka", "gin", "rum", "misc");
+ $query = "";
+
+ foreach($views as $view) {
+ if ($query != "") {
+ $query .= " UNION ";
+ }
+ $query .= "(SELECT name, image_url, spirit_type, spirit_type AS url, spirit_type AS angebotsname, original_price, discounted_price, procent, '' AS linktext FROM ". $view ."_view WHERE original_price > 19.98 ORDER BY procent DESC LIMIT 1)";
+ }
+
+ // removes the last union
+ #$query .= substr($query, -1, strlen(" UNION "));
+ #echo "<pre>";
+ #var_dump($query); exit;
+
+ /*
+ $dbh = DB::connection('mysql')->getPdo();
+ $stmt = $dbh->prepare($query);
+ $stmt->execute();
+
+ $data = $stmt->fetchAll(\PDO::FETCH_ASSOC);
+ */
+
+
+ #var_dump($query); exit;
+ $data = DB::select($query);
+ #$data = DB::table('whisky_view')->orderBy('procent', 'DESC')->limit(100)->simplePaginate(20);
return view('index', ['data' => $data]);
}
diff --git a/site/app/Http/Controllers/WhiskyController.php b/site/app/Http/Controllers/OfferController.php
index 620bfc7..99108cd 100644
--- a/site/app/Http/Controllers/WhiskyController.php
+++ b/site/app/Http/Controllers/OfferController.php
@@ -3,7 +3,10 @@ namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Helpers\CryptoHelper;
-class WhiskyController extends Controller {
+use Illuminate\Support\Facades\DB;
+use App\Http\Controllers\Controller;
+
+class OfferController extends Controller {
/**
* Shows the index page.
*
@@ -11,8 +14,13 @@ class WhiskyController extends Controller {
*/
public function showPage(Request $request) {
- $shops = DB:select('SELECT * FROM shop');
+ $view_name = \Request::route()->getName();
+ $data = DB::table($view_name . '_view')->orderBy('procent', 'DESC')->limit(100)->simplePaginate(20);
+
+ if ( "misc" == $view_name ) {
+ $view_name = "Andere Angebote";
+ }
- return view('whisky', $shops);
+ return view('offer', ['data' => $data, 'spirit_type' => $view_name]);
}
}
diff --git a/site/app/Libraries/TemplateFunction.php b/site/app/Libraries/TemplateFunction.php
new file mode 100644
index 0000000..582995f
--- /dev/null
+++ b/site/app/Libraries/TemplateFunction.php
@@ -0,0 +1,26 @@
+<?php
+namespace App\Libraries;
+use App\Libraries\TemplateFunction;
+
+class TemplateFunction {
+ private static function formatFloat($float, $size = 2) {
+ return number_format($float, $size);
+ }
+
+ private static function stripDot($float) {
+ return str_replace(".", ",", $float);
+ }
+
+ public static function fF($float, $format = "") {
+ $f = TemplateFunction::formatFloat($float);
+ if ($f == intval($f)) {
+ $f = intval($f);
+ }
+
+ return TemplateFunction::stripDot($f);
+ }
+
+ public static function T($timestamp) {
+ return gmdate("d.m.Y.", $timestamp);
+ }
+}