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

@@ -791,12 +791,17 @@ def test_login_branded_nu_schelet(client):
# ============================================================
def _citeste_landing() -> str:
"""Returneaza continutul landing.html (template static; variabilele Jinja2 nu
"""Returneaza landing.html + partial-urile comune (antet/footer/stil sunt
include-uri partajate cu paginile statice publice; variabilele Jinja2 nu
afecteaza copy-ul de limita/plan/buton verificat mai jos)."""
from pathlib import Path
p = Path(__file__).parent.parent / "app" / "web" / "templates" / "landing.html"
assert p.exists(), f"landing.html negasit la {p}"
return p.read_text(encoding="utf-8")
tdir = Path(__file__).parent.parent / "app" / "web" / "templates"
parts = []
for nume in ("landing.html", "_lp_header.html", "_lp_footer.html", "_lp_style.html"):
p = tdir / nume
assert p.exists(), f"{nume} negasit la {p}"
parts.append(p.read_text(encoding="utf-8"))
return "\n".join(parts)
def test_landing_limita_60():