fix: aplica classe ativo nos links da sidebar conforme rota atual

Adiciona class condicional (ativo se request.url.path.startswith(...))
em cada link de app/templates/base.html, usando o estilo .sidebar-nav
a.ativo que ja existia em estilo.css mas nunca era aplicado.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Gustavo
2026-08-14 00:48:37 -03:00
co-authored by Claude Sonnet 5
parent 9012795973
commit 6aeed3af7e
+5 -5
View File
@@ -24,26 +24,26 @@
<span class="sidebar-titulo">Painel de Clientes</span>
</div>
<nav class="sidebar-nav">
<a href="/clientes">
<a href="/clientes" class="{{ 'ativo' if request.url.path.startswith('/clientes') else '' }}">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="4" width="18" height="16" rx="2"/><path d="M3 9h18M9 21V9"/></svg>
<span>Clientes</span>
</a>
<a href="/gerador-chave">
<a href="/gerador-chave" class="{{ 'ativo' if request.url.path.startswith('/gerador-chave') else '' }}">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="8" cy="15" r="4"/><path d="M11 12l9-9M17 6l3 3M14 9l2 2"/></svg>
<span>Gerador de chave</span>
</a>
{% if request.state.usuario and request.state.usuario.eh_admin %}
<a href="/funcionarios">
<a href="/funcionarios" class="{{ 'ativo' if request.url.path.startswith('/funcionarios') else '' }}">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="9" cy="7" r="4"/><path d="M2 21v-2a5 5 0 0 1 5-5h4a5 5 0 0 1 5 5v2M17 11l2 2 4-4"/></svg>
<span>Funcionários</span>
</a>
{% endif %}
<a href="/log">
<a href="/log" class="{{ 'ativo' if request.url.path.startswith('/log') else '' }}">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M9 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-4"/><path d="M9 15h6M9 11h10M9 7h4"/></svg>
<span>Log</span>
</a>
{% if request.state.usuario %}
<a href="/minha-conta">
<a href="/minha-conta" class="{{ 'ativo' if request.url.path.startswith('/minha-conta') else '' }}">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="8" r="4"/><path d="M4 21a8 8 0 0 1 16 0"/></svg>
<span>Minha conta</span>
</a>