{#- Форма натальной карты: главная, страница карты (повторный показ с ошибками сервера) и «Изменить данные» под результатом. values — введённые значения, errors — сообщения по именам полей; оба необязательны. time_choice — вопрос о времени на переводе часов: кнопки-варианты (name/value/label). Отправка методом POST: данные рождения не попадают в адрес страницы и логи. -#} {% from "_partials/icon.html" import icon %} {% from "_partials/forms.html" import error_slot, invalid %} {% from "_partials/city_field.html" import city_field with context %} {% set values = values or {} %} {% set errors = errors or {} %} {% set accuracy = values.get("accuracy") or "exact" %}
{{ error_slot("natal-name", errors.get("name")) }}
{#- Границы — файлы эфемерид в ephe/ (sepl_18, semo_18, seas_18): 1800–2399 годы. #} {#- autocomplete="off": карту строят и на чужую дату, подстановка своего дня рождения мешает -#} {{ error_slot("natal-date", errors.get("date")) }}
{{ error_slot("natal-time", errors.get("time")) }}
{% if time_choice %} {#- Enter в поле формы нажимает первую кнопку отправки. Без этой пустой кнопки ею была бы кнопка первого варианта, и выбор сделался бы сам; так форма просто спросит ещё раз -#}

{{ icon("warning-circle") }}{{ time_choice.message }}

{%- for option in time_choice.options %} {%- endfor %}
{% elif values.get("utc_offset") %} {#- Выбор из двух одинаковых времён, сделанный раньше: без него форма снова спросит -#} {% endif %}
{{ t("natal_form.accuracy") }}
{%- for value in ("exact", "15m", "1h", "unknown") %} {%- endfor %}

{{ icon("info") }}{{ t("natal_form.unknown_note") }}

{{ city_field("natal", values, errors) }}

{{ t("natal_form.privacy") }}