{% extends "base.html" %}
{% block body %}
<div class="panel" style="max-width:760px;margin:8vh auto 0;">
  <h1>VK OAuth</h1>
  {% if result %}
    {% if result.ok %}
      <p class="pill ok">Токен VK-постера сохранён</p>
      <dl class="kv compact-kv">
        <dt>Сообщество</dt><dd>{{ result.owner_id }}</dd>
        <dt>User ID</dt><dd>{{ result.user_id or "—" }}</dd>
        <dt>Живёт, сек</dt><dd>{{ result.expires_in or "—" }}</dd>
        <dt>Истекает</dt><dd>{{ result.expires_at or "—" }}</dd>
        <dt>Refresh token</dt><dd>{% if result.has_refresh_token %}OK{% else %}Не получен{% endif %}</dd>
        <dt>wall.get</dt><dd>{% if result.wall_get_ok %}OK{% else %}Ошибка: {{ result.wall_get_error }}{% endif %}</dd>
        <dt>Фото upload</dt>
        <dd>
          {% if result.photo_upload_server_ok %}
            OK
          {% else %}
            Недоступно: {{ result.photo_upload_server_error }}
            <div class="muted">VK выдаёт право photos для upload API отдельно; постер всё равно опубликует текст и существующие VK-вложения.</div>
          {% endif %}
        </dd>
      </dl>
      <p><a class="btn primary" href="/workers">Вернуться к воркерам</a></p>
    {% else %}
      <p class="pill bad">VK OAuth не завершился</p>
      <p>{{ result.error_description or result.error or "Неизвестная ошибка" }}</p>
      <p><a class="btn" href="/workers">Вернуться к воркерам</a> <a class="btn primary" href="/vk-oauth/start">Повторить</a></p>
    {% endif %}
  {% elif code %}
    <p class="muted">VK вернул code. Новый обработчик должен обменивать его автоматически через <span class="mono">/vk-oauth/callback</span>.</p>
    <label>code</label>
    <textarea readonly style="min-height:110px;" onclick="this.select()">{{ code }}</textarea>
    {% if state and expected_state and state != expected_state %}
      <p class="pill bad">state не совпал, такой code лучше не использовать.</p>
    {% endif %}
  {% elif error %}
    <p class="pill bad">{{ error }}</p>
    <p>{{ error_description }}</p>
  {% else %}
    <p class="muted">VK вернул callback без данных.</p>
  {% endif %}
</div>
{% endblock %}
