diff options
| author | Markus Heiser <markus.heiser@darmarit.de> | 2025-05-29 11:38:34 +0200 |
|---|---|---|
| committer | Markus Heiser <markus.heiser@darmarIT.de> | 2025-05-31 20:34:59 +0200 |
| commit | ff206e967993bd2e7aa6597b03d0affee20948b9 (patch) | |
| tree | 1b03b3da44e5db205c55f6ed7783a94c6da3d8d7 /searx/templates | |
| parent | a800dd04735c98a293edff00493a5fee3dfeaed7 (diff) | |
[mod] weather results: add types, i18n/l10n, symbols & unit conversions
The types necessary for weather information such as GeoLocation, DateTime,
Temperature,Pressure, WindSpeed, RelativeHumidity, Compass (wind direction) and
symbols for the weather have been implemented.
There are unit conversions and translations for weather property labels.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Diffstat (limited to 'searx/templates')
| -rw-r--r-- | searx/templates/simple/answer/weather.html | 117 |
1 files changed, 56 insertions, 61 deletions
diff --git a/searx/templates/simple/answer/weather.html b/searx/templates/simple/answer/weather.html index 4cea9b683..bd59d4cfe 100644 --- a/searx/templates/simple/answer/weather.html +++ b/searx/templates/simple/answer/weather.html @@ -1,67 +1,62 @@ -{% macro show_weather_data(data) %} - <table> - <tbody> - {%- if data.condition -%} - <tr> - <td>{{ _("Condition") }}</td> - <td>{{ data.condition }}</td> - </tr> - {%- endif -%} - {%- if data.temperature -%} - <tr> - <td>{{ _("Temperature") }}</td> - <td>{{ data.temperature }}</td> - </tr> - {%- endif -%} - {%- if data.feelsLike -%} - <tr> - <td>{{ _("Feels Like") }}</td> - <td>{{ data.feelsLike }}</td> - </tr> - {%- endif -%} - {%- if data.wind -%} - <tr> - <td>{{ _("Wind") }}</td> - <td>{{ data.wind }}</td> - </tr> - {%- endif -%} - {%- if data.humidity -%} - <tr> - <td>{{ _("Humidity") }}</td> - <td>{{ data.humidity }}</td> - </tr> - {%- endif -%} - {%- if data.pressure -%} - <tr> - <td>{{ _("Pressure") }}</td> - <td>{{ data.pressure }}</td> - </tr> - {%- endif -%} - <tr> - {%- for name, value in data.attributes.items() -%} - <tr> - <td>{{ name }}</td> - <td>{{ value }}</td> - </tr> - {%- endfor -%} - </tbody> - </table> +{% macro show_weather_data(answer, data) %} + <table> + <colgroup> + <col span="1" class="thumbnail"> + <col span="1" class="title"> + <col span="1" class="measured"> + <col span="1" class="title"> + <col span="1" class="measured"> + </colgroup> + <tbody> + <tr> + <td rowspan="4"> + {%- if data.url %}<img class="symbol" src="{{ data.url }}" title="{{ data.summary }}">{% endif -%} + </td> + </tr> + <tr> + <td>{{ _("Temperature") }}:</td> + <td>{{ data.temperature.l10n(locale=data.location) }}</td> + <td>{{ _("Feels Like") }}:</td> + <td>{{ data.feels_like.l10n(locale=data.location) }}</td> + </tr> + <tr> + <td>{{ _("Wind") }}:</td> + <td>{{ data.wind_from.l10n(locale=data.location) }}: {{ data.wind_speed.l10n(locale=data.location) }}</td> + <td>{{ _("Pressure") }}:</td> + <td>{{ data.pressure.l10n(locale=data.location) }}</td> + </tr> + <tr> + <td>{{_("Humidity")}}:</td> + <td>{{ data.humidity.l10n(locale=data.location) }}</td> + <td></td> + <td></td> + </tr> + </tbody> + </table> {% endmacro %} -<details class="answer-weather"> - <summary>It's currently {{ answer.current.condition }}, {{ answer.current.temperature }} in {{ answer.location }}</summary> - <div> - <h2 class="title">{{ answer.location }}</h2> - <h3>{{ _("Current condition") }}</h3> - {{ show_weather_data(answer.current) }} - +<details class="weather"> + <summary> + <div class="summary"> {{ answer.current.summary }}</div> + {{ show_weather_data(answer, answer.current) }} + </summary> + <div class="weather-forecast"> {%- if answer.forecasts -%} - <div class="answer-weather-forecasts"> - {%- for forecast in answer.forecasts -%} - <h3>{{ forecast.time }}</h3> - {{ show_weather_data(forecast) }} - {%- endfor -%} - </div> + <div class="answer-weather-forecasts"> + {%- for forecast in answer.forecasts -%} + <div class="summary">{{ forecast.datetime.l10n(locale=answer.current.location,fmt="short") }} {{ forecast.summary }}</div> + {{ show_weather_data(answer, forecast) }} + {%- endfor -%} + </div> {%- endif -%} </div> </details> + +{%- if answer.url -%} + <a href="{{ answer.url }}" class="answer-url" + {%- if results_on_new_tab %}target="_blank" rel="noopener noreferrer"{%- else -%}rel="noreferrer"{%- endif -%}> + {{ answer.service }} + </a> +{%- else -%} + <span class="answer-url">{{ answer.service }}</span> +{% endif -%} |