From cee42aa17a6bb354df0600e6632702a2b4df7d82 Mon Sep 17 00:00:00 2001 From: horus Date: Thu, 21 Jan 2021 20:15:02 +0100 Subject: Rename RSSController to FeedController. --- app/Http/Controllers/FeedController.php | 151 ++++++++++++++++++++++++++++++++ app/Http/Controllers/RSSController.php | 151 -------------------------------- routes/web.php | 14 +-- 3 files changed, 158 insertions(+), 158 deletions(-) create mode 100644 app/Http/Controllers/FeedController.php delete mode 100644 app/Http/Controllers/RSSController.php diff --git a/app/Http/Controllers/FeedController.php b/app/Http/Controllers/FeedController.php new file mode 100644 index 0000000..adc2896 --- /dev/null +++ b/app/Http/Controllers/FeedController.php @@ -0,0 +1,151 @@ +get("filter"); + 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; + } + + $order_by = $request->input("order"); + if ( "asc" != $order_by ) { + $order_by = "desc"; + } + + /* + * Database query + */ + $view_name = str_replace("_feed", "", \Request::route()->getName()); + + if ( "search" == $view_name ) { + if ( "" != $request->get("q") ) { + $query = $request->get("q"); + $q = "%" . Utility::escapeLike($query) . "%"; + $data = DB::table('all_view')->whereNotNull('url')->where('name', 'like', $q)->orWhere('spirit_type', 'like', $q)->orderBy($sort_by, $order_by)->limit(20)->get(); + } else if ( "" != $request->get('type') ) { + $data = DB::table('all_view')->where('spirit_type', '=', $request->get('type'))->whereNotNull('url')->orderBy($sort_by, $order_by)->limit(20)->get(); + } else if ( "" != $request->get('shop') ) { + $data = DB::table('all_view')->where('shop', '=', $request->get('shop'))->whereNotNull('url')->orderBy($sort_by, $order_by)->limit(20)->get(); + } else { + $view_name = 'all'; // empty search will be processed in the next step + } + } + + // either empty search or generic feed + if ( !isset($data) ) { + $data = DB::table($view_name . '_view')->where('procent', '>=', 10)->orderBy($sort_by, $order_by)->limit(20)->get(); + } + + /* + * For strftime(). + */ + setlocale(LC_TIME, 'de_DE.utf8'); + + /* + if ( "" != env('PIWIK_RSS_ID') ) { + $piwik = new \PiwikTracker( env('PIWIK_RSS_ID'), env('PIWIK_RSS_URL') ); + $piwik->setTokenAuth( env('PIWIK_RSS_AUTH_TOKEN') ); + $piwik->setVisitorId( $piwik->getVisitorId() ); + $piwik->setIp( $request->header('X_REAL_IP') ); + $piwik->setUrl( $request->fullUrl() ); + + $piwik->setUrlReferrer( $request->server('HTTP_REFERER') ); + $piwik->setBrowserLanguage( $request->server('HTTP_ACCEPT_LANGUAGE') ); + $piwik->setUserAgent( $request->server('HTTP_USER_AGENT') ); + + $piwik->doTrackPageView( ucfirst($view_name) . "-Feed" ); + + if ( "" != $request->get('filter') ) { + $piwik->doTrackEvent("sort", $request->get('sort') ); + } + if ( "" != $request->get('order') ) { + $piwik->doTrackEvent("order", $request->get('order') ); + } + if ( "" != $request->get('q') ) { + $piwik->doTrackEvent("search_phrase", $request->get('q') ); + } + } + */ + + + + $feed = \App::make("feed"); + + $feed->title = "Sonderangebote"; + $feed->description = 'Finde immer die günstigsten Angebote im Bereich Spirituosen. Regelmäßig neue Schnäppchen.'; + $feed->logo = url('https://angebote.fuselkoenig.de/img/paw-400-400.png'); + $feed->link = url( $request->fullUrl() ); + #$feed->setDateFormat('timestamp'); // 'datetime', 'timestamp' or 'carbon' + $feed->setDateFormat('datetime'); // 'datetime', 'timestamp' or 'carbon' + $feed->pubdate = strftime('%Y-%m-%d', $data[0]->created_at); + $feed->lang = 'de'; + $feed->setShortening(true); // true or false + $feed->setTextLimit(5000); // maximum length of description text + + foreach ( $data as $offer ) { + + # Adds campagin + $offer->url = $offer->url . "?pk_campaign=feed&pk_kwd=" . urlencode($offer->name) . "&pk_source=" . $view_name . "_feed"; + + if ( "" != env('PIWIK_RSS_ID') ) { + //$piwik->doTrackContentImpression($offer->spirit_type, $offer->name, $offer->long_url); + } + + $desc = '

'.$offer->spirit_type.'
'. $offer->name . ' gesenkt auf ' . \TF::fF($offer->discounted_price) . '€ statt ' . \TF::fF($offer->original_price) . '€ ('.$offer->procent.'% Rabatt auf '. $offer->shop .').'; + + $feed->addItem( [ + 'title' => $offer->name, + 'author' => $offer->shop, + 'url' => $offer->url, + 'link' => $offer->url, + 'pubdate' => strftime('%Y-%m-%d', $offer->created_at), + 'description' => $desc, + 'content' => $desc ] ); + } + + return $feed->render('atom'); + + } +} diff --git a/app/Http/Controllers/RSSController.php b/app/Http/Controllers/RSSController.php deleted file mode 100644 index a75371c..0000000 --- a/app/Http/Controllers/RSSController.php +++ /dev/null @@ -1,151 +0,0 @@ -get("filter"); - 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; - } - - $order_by = $request->input("order"); - if ( "asc" != $order_by ) { - $order_by = "desc"; - } - - /* - * Database query - */ - $view_name = str_replace("_feed", "", \Request::route()->getName()); - - if ( "search" == $view_name ) { - if ( "" != $request->get("q") ) { - $query = $request->get("q"); - $q = "%" . Utility::escapeLike($query) . "%"; - $data = DB::table('all_view')->whereNotNull('url')->where('name', 'like', $q)->orWhere('spirit_type', 'like', $q)->orderBy($sort_by, $order_by)->limit(20)->get(); - } else if ( "" != $request->get('type') ) { - $data = DB::table('all_view')->where('spirit_type', '=', $request->get('type'))->whereNotNull('url')->orderBy($sort_by, $order_by)->limit(20)->get(); - } else if ( "" != $request->get('shop') ) { - $data = DB::table('all_view')->where('shop', '=', $request->get('shop'))->whereNotNull('url')->orderBy($sort_by, $order_by)->limit(20)->get(); - } else { - $view_name = 'all'; // empty search will be processed in the next step - } - } - - // either empty search or generic feed - if ( !isset($data) ) { - $data = DB::table($view_name . '_view')->where('procent', '>=', 10)->orderBy($sort_by, $order_by)->limit(20)->get(); - } - - /* - * For strftime(). - */ - setlocale(LC_TIME, 'de_DE.utf8'); - - /* - if ( "" != env('PIWIK_RSS_ID') ) { - $piwik = new \PiwikTracker( env('PIWIK_RSS_ID'), env('PIWIK_RSS_URL') ); - $piwik->setTokenAuth( env('PIWIK_RSS_AUTH_TOKEN') ); - $piwik->setVisitorId( $piwik->getVisitorId() ); - $piwik->setIp( $request->header('X_REAL_IP') ); - $piwik->setUrl( $request->fullUrl() ); - - $piwik->setUrlReferrer( $request->server('HTTP_REFERER') ); - $piwik->setBrowserLanguage( $request->server('HTTP_ACCEPT_LANGUAGE') ); - $piwik->setUserAgent( $request->server('HTTP_USER_AGENT') ); - - $piwik->doTrackPageView( ucfirst($view_name) . "-Feed" ); - - if ( "" != $request->get('filter') ) { - $piwik->doTrackEvent("sort", $request->get('sort') ); - } - if ( "" != $request->get('order') ) { - $piwik->doTrackEvent("order", $request->get('order') ); - } - if ( "" != $request->get('q') ) { - $piwik->doTrackEvent("search_phrase", $request->get('q') ); - } - } - */ - - - - $feed = \App::make("feed"); - - $feed->title = "Sonderangebote"; - $feed->description = 'Finde immer die günstigsten Angebote im Bereich Spirituosen. Regelmäßig neue Schnäppchen.'; - $feed->logo = url('https://angebote.fuselkoenig.de/img/paw-400-400.png'); - $feed->link = url( $request->fullUrl() ); - #$feed->setDateFormat('timestamp'); // 'datetime', 'timestamp' or 'carbon' - $feed->setDateFormat('datetime'); // 'datetime', 'timestamp' or 'carbon' - $feed->pubdate = strftime('%Y-%m-%d', $data[0]->created_at); - $feed->lang = 'de'; - $feed->setShortening(true); // true or false - $feed->setTextLimit(5000); // maximum length of description text - - foreach ( $data as $offer ) { - - # Adds campagin - $offer->url = $offer->url . "?pk_campaign=feed&pk_kwd=" . urlencode($offer->name) . "&pk_source=" . $view_name . "_feed"; - - if ( "" != env('PIWIK_RSS_ID') ) { - //$piwik->doTrackContentImpression($offer->spirit_type, $offer->name, $offer->long_url); - } - - $desc = '

'.$offer->spirit_type.'
'. $offer->name . ' gesenkt auf ' . \TF::fF($offer->discounted_price) . '€ statt ' . \TF::fF($offer->original_price) . '€ ('.$offer->procent.'% Rabatt auf '. $offer->shop .').'; - - $feed->addItem( [ - 'title' => $offer->name, - 'author' => $offer->shop, - 'url' => $offer->url, - 'link' => $offer->url, - 'pubdate' => strftime('%Y-%m-%d', $offer->created_at), - 'description' => $desc, - 'content' => $desc ] ); - } - - return $feed->render('atom'); - - } -} diff --git a/routes/web.php b/routes/web.php index a272f87..d0d7211 100644 --- a/routes/web.php +++ b/routes/web.php @@ -22,12 +22,12 @@ Route::get('/all', 'ListOfferController@showPage')->name('all'); Route::get('/search', 'SearchController@showPage')->name('search'); -Route::get('/whisky/feed', 'RSSController@showPage')->name('whisky_feed'); -Route::get('/wodka/feed', 'RSSController@showPage')->name('wodka_feed'); -Route::get('/gin/feed', 'RSSController@showPage')->name('gin_feed'); -Route::get('/rum/feed', 'RSSController@showPage')->name('rum_feed'); -Route::get('/misc/feed', 'RSSController@showPage')->name('misc_feed'); -Route::get('/all/feed', 'RSSController@showPage')->name('all_feed'); -Route::get('/search/feed', 'RSSController@showPage')->name('search_feed'); +Route::get('/whisky/feed', 'FeedController@showPage')->name('whisky_feed'); +Route::get('/wodka/feed', 'FeedController@showPage')->name('wodka_feed'); +Route::get('/gin/feed', 'FeedController@showPage')->name('gin_feed'); +Route::get('/rum/feed', 'FeedController@showPage')->name('rum_feed'); +Route::get('/misc/feed', 'FeedController@showPage')->name('misc_feed'); +Route::get('/all/feed', 'FeedController@showPage')->name('all_feed'); +Route::get('/search/feed', 'FeedController@showPage')->name('search_feed'); Route::get('/_/api/lookup', 'LookupController@showPage')->name('lookup'); -- cgit v1.2.3