From 0074a267bf3a61197faa602736e04d7c8b6954b7 Mon Sep 17 00:00:00 2001
From: Dominik Pfennig <dominik@suma-ev.de>
Date: Tue, 6 Dec 2016 09:06:46 +0100
Subject: [PATCH] =?UTF-8?q?Quicktip=20f=C3=BCr=20die=20Sprachauswahl=20hin?=
 =?UTF-8?q?zugef=C3=BCgt?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 app/Http/Controllers/MetaGerSearch.php | 16 ++++++++--------
 app/MetaGer.php                        | 11 +++--------
 resources/lang/de/results.php          |  2 +-
 resources/views/metager3.blade.php     |  2 +-
 resources/views/quicktip.blade.php     | 17 +++++++++++++++++
 5 files changed, 30 insertions(+), 18 deletions(-)

diff --git a/app/Http/Controllers/MetaGerSearch.php b/app/Http/Controllers/MetaGerSearch.php
index df2ea016d..1dea07907 100644
--- a/app/Http/Controllers/MetaGerSearch.php
+++ b/app/Http/Controllers/MetaGerSearch.php
@@ -45,7 +45,7 @@ class MetaGerSearch extends Controller
             ->with('r', $redirect);
     }
 
-    public function quicktips(Request $request)
+    public function quicktips(Request $request, MetaGer $metager)
     {
         $q = $request->input('q', '');
 
@@ -95,20 +95,20 @@ class MetaGerSearch extends Controller
                 $url = "http://api.openweathermap.org/data/2.5/weather?type=accurate&units=metric&lang=de&q=" . urlencode($q) . "&APPID=" . getenv("openweathermap");
             }
 
-            $result           = json_decode($this->get($url), true);
-            
+            $result = json_decode($this->get($url), true);
+
             $searchWords = explode(' ', $q);
-            $within = false;
-            foreach($searchWords as $word){
-                if(stripos($result["name"], $word) !== false){
+            $within      = false;
+            foreach ($searchWords as $word) {
+                if (stripos($result["name"], $word) !== false) {
                     $within = true;
                 }
             }
-            if($within){
+            if ($within) {
                 $weather          = [];
                 $weather["title"] = "Wetter in " . $result["name"];
                 $weather["URL"]   = "http://openweathermap.org/city/" . $result["id"];
-    
+
                 $summary = '<b class="detail-short">' . $result["main"]["temp"] . " °C, " . $result["weather"][0]["description"] . "</b>";
                 $details = '<table  class="table table-condensed"><tr><td>Temperatur</td><td>' . $result["main"]["temp_min"] . " bis " . $result["main"]["temp_max"] . " °C</td></tr>";
                 $details .= "<tr><td>Druck</td><td>" . $result["main"]["pressure"] . " hPa</td></tr>";
diff --git a/app/MetaGer.php b/app/MetaGer.php
index 58664c448..5d9fc8f97 100644
--- a/app/MetaGer.php
+++ b/app/MetaGer.php
@@ -877,12 +877,6 @@ class MetaGer
         if ($this->lang !== "de" && $this->lang !== "en" && $this->lang !== "all") {
             $this->lang = "all";
         }
-        if ($this->lang !== 'all') {
-            # Warnung hinzufügen, dass die Ergebnisse gefiltert sind.
-            $this->warnings[] = trans('results.filter', ['langName' => LaravelLocalization::getSupportedLocales()[LaravelLocalization::getCurrentLocale()]['native'], 'link' => $this->getUnFilteredLink(), 'filter' => $this->lang]);
-        } else {
-            $this->warnings[] = trans('results.filter.default', ['langName' => LaravelLocalization::getSupportedLocales()[LaravelLocalization::getCurrentLocale()]['native']]);
-        }
 
         $this->agent  = new Agent();
         $this->mobile = $this->agent->isMobile();
@@ -1236,8 +1230,9 @@ class MetaGer
 
     public function getUnFilteredLink()
     {
-        $requestData = $this->request->except(['lang']);
-        $link        = action('MetaGerSearch@search', $requestData);
+        $requestData         = $this->request->except(['lang']);
+        $requestData['lang'] = "all";
+        $link                = action('MetaGerSearch@search', $requestData);
         return $link;
     }
 
diff --git a/resources/lang/de/results.php b/resources/lang/de/results.php
index e6c87e75c..c9159d385 100644
--- a/resources/lang/de/results.php
+++ b/resources/lang/de/results.php
@@ -4,6 +4,6 @@ return [
     'redirect'       => '(mit redirect)',
     'weiter'         => 'Weitersuchen',
     'zurueck'        => 'Zurück',
-    'filter'         => 'Die Suchergebnisse wurden gefiltert: <strong>[:filter]</strong>. <a href=":link">Filter abschalten.</a>',
+    'filter'         => 'Die Suchergebnisse wurden gefiltert: <strong>[:filter]</strong>. <a href=":link" target="_blank">Filter abschalten.</a>',
     'filter.default' => 'Sie erhalten die Benutzeroberfläche in <strong>:langName</strong>, aber Ergebnisse in <strong>ALLEN</strong> Sprachen. Für ausschließlich deutschsprachige Ergebnisse können Sie unter <a href="/settings" target="_blank">anpassen</a> die "Sprache auswählen".',
 ];
diff --git a/resources/views/metager3.blade.php b/resources/views/metager3.blade.php
index 4932f3917..b09fc8e94 100644
--- a/resources/views/metager3.blade.php
+++ b/resources/views/metager3.blade.php
@@ -56,7 +56,7 @@
 
 	@if( $metager->showQuicktips() )
 		<div class="hidden-xs col-md-4" id="quicktips">
-			<iframe class="col-mod-4 hidden-xs hidden-sm" src="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "/qt") }}?q={{ $metager->getQ() }}&sprueche={{ $metager->getSprueche() }}"></iframe>
+			<iframe class="col-mod-4 hidden-xs hidden-sm" src="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "/qt") }}?q={{ $metager->getQ() }}&sprueche={{ $metager->getSprueche() }}&lang={{ Request::input('lang', 'all') }}&unfilteredLink={{ base64_encode($metager->getUnfilteredLink()) }}"></iframe>
 		</div>
 	@endif
 @endsection
diff --git a/resources/views/quicktip.blade.php b/resources/views/quicktip.blade.php
index 2a09d0ef3..ac02848a0 100644
--- a/resources/views/quicktip.blade.php
+++ b/resources/views/quicktip.blade.php
@@ -50,6 +50,23 @@
 						@endif
 			</div>
 		@endforeach
+		<div class="quicktip">
+			<details>
+				<summary>
+					<div class="media">
+						<div class="media-body">
+							<div>
+								@if( Request::input('lang') === "all")
+									{!! trans('results.filter.default', ['langName' => LaravelLocalization::getSupportedLocales()[LaravelLocalization::getCurrentLocale()]['native']]) !!}
+								@else
+									{!! trans('results.filter', ['langName' => LaravelLocalization::getSupportedLocales()[LaravelLocalization::getCurrentLocale()]['native'], 'link' => base64_decode(Request::input('unfilteredLink','')), 'filter' => Request::input('lang')]) !!}
+								@endif
+							</div>
+						</div>
+					</div>
+				</summary>
+			</details>
+		</div>
 		<script src="/js/quicktips.js">
         </script>
 	</body>
-- 
GitLab