rename to wohnungsdidi + didi logo + footer for all + seconds-only counter
- App is now called "wohnungsdidi" everywhere user-facing (page title,
nav brand, login header, notification subjects, report filename,
FastAPI titles, log messages)
- Brand dot replaced with an image of Didi (web/static/didi.webp),
rendered as a round 2.25rem avatar in _layout + login
- "Programmiert für Annika ♥" footer now shows for every logged-in user,
not only Annika
- Count-up shows only seconds ("vor 73 s") regardless of age — no
rollover to minutes/hours
- Data continuity: DB file stays /data/lazyflat.sqlite and the Docker
volume stays lazyflat_data so the rename doesn't strand existing data
- Session cookie renamed to wohnungsdidi_session (one-time logout on
rollout)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
da180bd7c7
commit
0c18f0870a
14 changed files with 34 additions and 32 deletions
10
web/app.py
10
web/app.py
|
|
@ -1,5 +1,5 @@
|
|||
"""
|
||||
lazyflat web app.
|
||||
wohnungsdidi web app.
|
||||
|
||||
Tabs:
|
||||
- / → Wohnungen
|
||||
|
|
@ -84,7 +84,7 @@ async def lifespan(_app: FastAPI):
|
|||
yield
|
||||
|
||||
|
||||
app = FastAPI(lifespan=lifespan, title="lazyflat", docs_url=None, redoc_url=None, openapi_url=None)
|
||||
app = FastAPI(lifespan=lifespan, title="wohnungsdidi", docs_url=None, redoc_url=None, openapi_url=None)
|
||||
app.mount("/static", StaticFiles(directory="static"), name="static")
|
||||
templates = Jinja2Templates(directory="templates")
|
||||
|
||||
|
|
@ -712,7 +712,7 @@ def bewerbung_zip(request: Request, app_id: int):
|
|||
with zipfile.ZipFile(buf, "w", compression=zipfile.ZIP_DEFLATED) as zf:
|
||||
zf.writestr(
|
||||
"README.txt",
|
||||
f"lazyflat application report\n"
|
||||
f"wohnungsdidi application report\n"
|
||||
f"application_id={a['id']}\n"
|
||||
f"flat_id={a['flat_id']}\n"
|
||||
f"provider={a['provider']}\n"
|
||||
|
|
@ -764,7 +764,7 @@ def bewerbung_zip(request: Request, app_id: int):
|
|||
zf.writestr(f"snapshots/{idx:02d}_{label}.html", html)
|
||||
|
||||
buf.seek(0)
|
||||
filename = f"lazyflat-report-{a['id']}.zip"
|
||||
filename = f"wohnungsdidi-report-{a['id']}.zip"
|
||||
return StreamingResponse(
|
||||
buf, media_type="application/zip",
|
||||
headers={"Content-Disposition": f'attachment; filename="{filename}"'},
|
||||
|
|
@ -889,7 +889,7 @@ def tab_logs_export(request: Request):
|
|||
e["ip"],
|
||||
])
|
||||
body = buf.getvalue().encode("utf-8")
|
||||
filename = "lazyflat-protokoll"
|
||||
filename = "wohnungsdidi-protokoll"
|
||||
if q.get("from"): filename += f"-{q['from']}"
|
||||
if q.get("to"): filename += f"-bis-{q['to']}"
|
||||
filename += ".csv"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue