8 stories TDD (echipa Sonnet, lead orchestreaza). US-001 scoate hold-ul auto_send din mapare (has_no_auto_send->False, simbol pastrat; cod rezolvat->queued). US-002 scoate bifa auto_send din UI. US-003 preview pas 3 in format .tabel-trimiteri (STARI_PREVIEW + nota_umana_preview, fara repr Python; view-model prez). US-004 filtre layout/stil ca referinta + buton Custom. US-005 navigatie Trimiteri/Mapari sub contoare pe toate paginile. US-006 import <details> nativ colapsabil. US-007 post-commit reveal (OOB _coada/_status + HX-Trigger). US-008 auto-refresh dupa actiuni (nudge eliminat). VERIFY context curat PASS (8/8). /code-review high: 3 buguri reparate (tab nav la self-refresh, pill Custom valori stale, nota_umana_preview precedenta needs_mapping). 934 passed, 1 skipped. Backend trimitere + schema NEATINSE. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
70 lines
3.6 KiB
HTML
70 lines
3.6 KiB
HTML
<div id="status-bar" class="status-bar card"
|
|
hx-get="/_fragments/status?tab={{ tab_activ | default('acasa') }}"
|
|
hx-trigger="every 15s, trimiteriChanged from:body"
|
|
hx-swap="outerHTML"
|
|
{% if oob %}hx-swap-oob="outerHTML"{% endif %}>
|
|
|
|
<!-- Cont in asteptare de activare (regasit din vechiul _banner; mereu vizibil) -->
|
|
{% if not account_active %}
|
|
<div style="margin-bottom:12px; padding:8px 10px; border-left:3px solid var(--warn);
|
|
background:color-mix(in srgb, var(--warn) 12%, var(--card)); border-radius:6px; font-size:13px;">
|
|
<strong>Cont in asteptare de activare.</strong>
|
|
Configureaza credentialele RAR si pregateste importul acum; trimiterea catre RAR
|
|
porneste automat dupa activare de catre administrator.
|
|
</div>
|
|
{% endif %}
|
|
|
|
<!-- Rand 1: doua bife binare + ultima autentificare -->
|
|
<div style="display:flex; gap:28px; flex-wrap:wrap; align-items:center; font-size:14px;">
|
|
|
|
{# Bifa: glifa (✓/✗) + culoare + text — accesibil (nu doar culoare, design review) #}
|
|
{% macro bifa(ok, text, tip) %}
|
|
<span title="{{ tip }}" style="display:inline-flex; align-items:center; gap:7px;">
|
|
{% if ok %}
|
|
<span class="s-sent" aria-hidden="true" style="font-weight:bold;">✓</span>
|
|
<span class="s-sent">{{ text }}</span>
|
|
{% else %}
|
|
<span class="s-error" aria-hidden="true" style="font-weight:bold;">✗</span>
|
|
<span class="s-error">{{ text }}</span>
|
|
{% endif %}
|
|
</span>
|
|
{% endmacro %}
|
|
|
|
{{ bifa(worker_ok, worker_lbl[0], worker_lbl[1]) }}
|
|
{{ bifa(rar_ok, rar_lbl[0], rar_lbl[1]) }}
|
|
|
|
<span style="display:inline-flex; align-items:center; gap:6px;">
|
|
<span class="muted">{{ eticheta_ultima_auth }}:</span>
|
|
<span>{{ last_login }}</span>
|
|
</span>
|
|
</div>
|
|
|
|
<!-- Rand 2: contoare coada -->
|
|
<div style="margin-top:10px; display:flex; gap:20px; flex-wrap:wrap; font-size:14px;">
|
|
<span><span class="muted">In asteptare:</span> <span class="s-queued">{{ counts_queued }}</span></span>
|
|
<span><span class="muted">Declarate la RAR:</span> <span class="s-sent">{{ counts_sent }}</span></span>
|
|
<span><span class="muted">Blocate:</span>
|
|
<span class="{{ 's-error' if blocate_total else 'muted' }}">{{ blocate_total }}</span>
|
|
</span>
|
|
</div>
|
|
|
|
{# Pill-urile de stare s-au mutat in bara de filtre din sectiunea Trimiteri (_coada.html). #}
|
|
|
|
{# === Rand 3: navigatie rapida sub contoare (US-005) ===
|
|
Linkurile Trimiteri + Mapari apar pe FIECARE pagina sub status-bar.
|
|
Marcajul activ vine din variabila de context tab_activ (transmisa de dashboard via ?tab=
|
|
sau default 'acasa'). Badge-ul Mapari = mapari_badge (aceeasi sursa: counts.needs_mapping).
|
|
#}
|
|
{% set _tab = tab_activ | default('acasa') %}
|
|
<nav class="status-nav" aria-label="Navigatie rapida"
|
|
style="margin-top:10px; display:flex; gap:8px 16px; flex-wrap:wrap; font-size:13px; border-top:1px solid var(--line); padding-top:8px;">
|
|
<a href="/"
|
|
{% if _tab == 'acasa' or _tab == '' %}aria-current="page"{% endif %}
|
|
class="status-nav-link{% if _tab == 'acasa' or _tab == '' %} status-nav-activ{% endif %}">Trimiteri</a>
|
|
<a href="/?tab=mapari"
|
|
{% if _tab == 'mapari' %}aria-current="page"{% endif %}
|
|
class="status-nav-link{% if _tab == 'mapari' %} status-nav-activ{% endif %}">Mapari{% if mapari_badge %}<span class="tab-badge" aria-hidden="true" style="display:inline-flex; align-items:center; justify-content:center; min-width:16px; height:16px; margin-left:4px; padding:0 4px; border-radius:99px; background:var(--err); color:#fff; font-size:11px; font-weight:700;">{{ mapari_badge }}</span>{% endif %}</a>
|
|
</nav>
|
|
|
|
</div>
|