151 lines
6.4 KiB
HTML
151 lines
6.4 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport"
|
||
content="width=device-width, initial-scale=1.0">
|
||
<meta http-equiv="X-UA-Compatible"
|
||
content="ie=edge">
|
||
<title>Погода | {{response.location}} | {{response.date.strftime('%a, %d %B %Y')}}</title>
|
||
<link rel="stylesheet"
|
||
href="/static/style.css">
|
||
<link rel="icon"
|
||
href="/static/favicon.ico"
|
||
type="image/x-icon">
|
||
</head>
|
||
|
||
<body>
|
||
<h3>
|
||
<a class="button {{'disabled' if response.date == datetime.date.today() else ''}}"
|
||
href="{{response.date - datetime.timedelta(days=1)}}">🡨</a>
|
||
<span>{{response.location}} | {{response.date.strftime('%a, %d %B %Y')}}</span>
|
||
<a class="button"
|
||
href="{{response.date + datetime.timedelta(days=1)}}">🡪</a>
|
||
</h3>
|
||
<table>
|
||
<tbody>
|
||
<!-- date -->
|
||
<tr>
|
||
{% for value in response.values %}
|
||
<td
|
||
class="date {{'now' if value.date < datetime.datetime.now() and value.date + datetime.timedelta(hours=3) > datetime.datetime.now() else ''}}">
|
||
<span class="value">{{value.date.strftime('%H:%M')}}</span>
|
||
</td>
|
||
{% endfor %}
|
||
</tr>
|
||
<!-- cloudness -->
|
||
<tr>
|
||
<td colspan="{{response.values | length}}"
|
||
class="header">
|
||
Облачность
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
{% for value in response.values %}
|
||
<td class="cloudness">
|
||
<span class="icon">{{value.cloudness | cloudness_icon}}</span>
|
||
</td>
|
||
{% endfor %}
|
||
</tr>
|
||
<!-- temperature -->
|
||
<tr>
|
||
<td colspan="{{response.values | length}}"
|
||
class="header">
|
||
Температура, °C
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
{% for value in response.values %}
|
||
<td class="temperature {{'positive' if value.temperature > 0 else 'negative'}}"
|
||
style="background-color: rgba(255, 128, 128, {{(value.temperature - 10) * 0.015}});">
|
||
<span class="value">{{value.temperature}}</span>
|
||
</td>
|
||
{% endfor %}
|
||
</tr>
|
||
<!-- wind_direction -->
|
||
<tr>
|
||
<td colspan="{{response.values | length}}"
|
||
class="header">
|
||
Направление ветра
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
{% for value in response.values %}
|
||
<td class="wind">
|
||
<span class="icon">{{value.wind_direction | wind_direction_icon}}</span>
|
||
<span class="direction">{{value.wind_direction}}</span>
|
||
</td>
|
||
{% endfor %}
|
||
</tr>
|
||
<!-- wind_speed -->
|
||
<tr>
|
||
<td colspan="{{response.values | length}}"
|
||
class="header">
|
||
Скорость ветра, м/с
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
{% for value in response.values %}
|
||
<td class="wind"
|
||
style="background-color: rgba(128, 128, 128, {{value.wind_speed * 0.05}});">
|
||
<span class="speed">{{value.wind_speed}}</span>
|
||
{% if value.wind_gust != value.wind_speed %}
|
||
<span class="gust">
|
||
({{value.wind_gust}})
|
||
</span>
|
||
{% endif %}
|
||
</td>
|
||
{% endfor %}
|
||
</tr>
|
||
<!-- precipitation -->
|
||
<tr>
|
||
<td colspan="{{response.values | length}}"
|
||
class="header">
|
||
Осадки, мм
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
{% for value in response.values %}
|
||
<td class="precipitation"
|
||
style="background-color: rgba(0, 128, 255, {{value.precipitation * 0.1}});">
|
||
<span class="value">{{value.precipitation or ' '}}</span>
|
||
</td>
|
||
{% endfor %}
|
||
</tr>
|
||
<!-- pressure -->
|
||
<tr>
|
||
<td colspan="{{response.values | length}}"
|
||
class="header">
|
||
Давление, мм рт. ст.
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
{% for value in response.values %}
|
||
<td class="pressure"
|
||
style="background-color: rgba(128, 0, 255, {{(value.pressure - 720) * 0.008}});">
|
||
<span class="value">{{value.pressure}}</span>
|
||
</td>
|
||
{% endfor %}
|
||
</tr>
|
||
<!-- humidity -->
|
||
<tr>
|
||
<td colspan="{{response.values | length}}"
|
||
class="header">
|
||
Влажность, %
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
{% for value in response.values %}
|
||
<td class="humidity"
|
||
style="background-color: rgba(128, 128, 255, {{value.humidity * 0.005}});">
|
||
<span class="value">{{value.humidity}}</span>
|
||
</td>
|
||
{% endfor %}
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<script src="/static/index.js"></script>
|
||
</body>
|
||
|
||
</html> |