feat(landing): pagini publice Termeni/GDPR/Documentatie API + fix link-uri moarte

Antet/footer/stil extrase in include-uri comune (_lp_*.html) folosite de
landing si de shell-ul paginilor statice (landing_static.html). Butoanele
'Vezi cum functioneaza' si 'Vezi documentatia API' devin link-uri reale;
footer-ul si consimtamantul de la inregistrare leaga paginile noi;
Contact indica spre romfast.ro/menu/contact.html.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Claude Agent
2026-07-09 14:01:56 +00:00
parent 9b5006f26c
commit 251666feb6
10 changed files with 375 additions and 88 deletions

View File

@@ -837,6 +837,32 @@ def dashboard(request: Request, tab: str = "acasa", status: str | None = None, s
conn.close()
# Pagini statice publice cu antet/footer comune cu landing-ul.
_PAGINI_STATICE = {
"termeni": "termeni.html",
"confidentialitate": "confidentialitate.html",
}
@router.get("/termeni", response_class=HTMLResponse)
@router.get("/confidentialitate", response_class=HTMLResponse)
def pagina_statica(request: Request) -> HTMLResponse:
nume = request.url.path.strip("/")
return templates.TemplateResponse(_PAGINI_STATICE[nume], {"request": request})
@router.get("/documentatie-api", response_class=HTMLResponse)
def pagina_documentatie_api(request: Request) -> HTMLResponse:
"""Documentatie API publica (varianta scurta a tab-ului Integrare, fara login)."""
from .integrare_examples import exemplu_json
return templates.TemplateResponse("documentatie_api.html", {
"request": request,
"base_url": str(request.base_url).rstrip("/"),
"exemplu_json": exemplu_json(),
})
@router.get("/_fragments/acasa", response_class=HTMLResponse)
def fragment_acasa(request: Request) -> HTMLResponse:
"""Fragment HTMX pentru tab-ul Acasa."""