From 71db419d5b2455685ab5e6b0f925aaf00179076c Mon Sep 17 00:00:00 2001 From: Dominik Pfennig <dominik@suma-ev.de> Date: Wed, 30 Nov 2016 12:49:30 +0100 Subject: [PATCH] Wetter wird nur noch angezeigt, wenn der Ortsname exakt als Ergebnis vorkommt. --- app/Http/Controllers/MetaGerSearch.php | 52 +++++++++++++++----------- 1 file changed, 31 insertions(+), 21 deletions(-) diff --git a/app/Http/Controllers/MetaGerSearch.php b/app/Http/Controllers/MetaGerSearch.php index 98b80f6d1..2b174f1de 100644 --- a/app/Http/Controllers/MetaGerSearch.php +++ b/app/Http/Controllers/MetaGerSearch.php @@ -96,28 +96,38 @@ class MetaGerSearch extends Controller } $result = json_decode($this->get($url), true); - $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>"; - $details .= "<tr><td>Luftfeuchtigkeit</td><td>" . $result["main"]["humidity"] . " %</td></tr>"; - $details .= "<tr><td>Wind</td><td>" . $result["wind"]["speed"] . " m/s, " . $result["wind"]["deg"] . "°</td></tr>"; - $details .= "<tr><td>Bewölkung</td><td>" . $result["clouds"]["all"] . " %</td></tr>"; - if (isset($result->rain)) { - $details .= " | Regen letzte drei Stunden: " . $result["rain"]["3h"] . " h"; + + $searchWords = explode(' ', $q); + $within = false; + foreach($q as $word){ + if(stripos($word, $result["name"]) !== false){ + $within = true; + } + } + 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>"; + $details .= "<tr><td>Luftfeuchtigkeit</td><td>" . $result["main"]["humidity"] . " %</td></tr>"; + $details .= "<tr><td>Wind</td><td>" . $result["wind"]["speed"] . " m/s, " . $result["wind"]["deg"] . "°</td></tr>"; + $details .= "<tr><td>Bewölkung</td><td>" . $result["clouds"]["all"] . " %</td></tr>"; + if (isset($result->rain)) { + $details .= " | Regen letzte drei Stunden: " . $result["rain"]["3h"] . " h"; + } + $details .= "</table>"; + $weather["summary"] = $summary; + $weather["details"] = $details; + $weather["gefVon"] = "von <a href = \"https://openweathermap.org\" target=\"_blank\" rel=\"noopener\">Openweathermap</a>"; + $requestData = []; + $requestData["url"] = "http://openweathermap.org/img/w/"; + $weather["image"] = action('Pictureproxy@get', $requestData) . $result["weather"][0]["icon"] . ".png"; + $weather["image-alt"] = $result["weather"][0]["main"]; + $mquicktips[] = $weather; } - $details .= "</table>"; - $weather["summary"] = $summary; - $weather["details"] = $details; - $weather["gefVon"] = "von <a href = \"https://openweathermap.org\" target=\"_blank\" rel=\"noopener\">Openweathermap</a>"; - $requestData = []; - $requestData["url"] = "http://openweathermap.org/img/w/"; - $weather["image"] = action('Pictureproxy@get', $requestData) . $result["weather"][0]["icon"] . ".png"; - $weather["image-alt"] = $result["weather"][0]["main"]; - $mquicktips[] = $weather; } catch (\ErrorException $e) { } -- GitLab