f4e1bc8a95Docs: rewrite README with clear Docker and Docker Compose instructions; refactor app into package (auth, admin, pages, db); keep single entrypoint app.py
main
RGalyaviev2025-09-04 10:48:04 +03:00
cc767dcf46Exports: use Flask send_file with ASCII-safe filenames to avoid Latin-1 header errors; add slugified download_nameRGalyaviev2025-09-04 09:07:16 +03:00
361f9d0bbePDF export: sanitize HTML (remove <style>, style attributes, <script>) to avoid xhtml2pdf font-size errorRGalyaviev2025-09-04 08:54:48 +03:00
2f031591bfExport: add /p/<uid>.pdf and /p/<uid>.docx (xhtml2pdf + htmldocx); overlay export buttons for all users; minor HTML wrappingRGalyaviev2025-09-04 08:48:36 +03:00
54833b39f1Compose-only setup: use python:3.11-slim image, install deps at start, mount code and DB volume; no Dockerfile requiredRGalyaviev2025-09-03 20:44:07 +03:00
bc3f9f1079Fix syntax error: properly concatenate watermark HTML strings in view_page()RGalyaviev2025-09-03 15:56:14 +03:00
752522cc13Fix startup: correct watermark HTML concatenation; allow DATABASE env var; compose persists DB under /data; minor header css retains single Exit buttonRGalyaviev2025-09-03 15:50:57 +03:00
d2a65dedb3Admin: add edit page (GET/POST), live preview; list shows Edit button; inject page title + watermark on public pages; clean header (only one logout); alignment via flex; add Dockerfile and docker-compose.yml; add gunicornRGalyaviev2025-09-03 15:46:19 +03:00
c87f4fb0d6UI: move logout to top-right, hide header Admin link; add global 'Made by Ruslan' watermark with handwriting font; inject <title> from page name; move page overlay Admin button to top-rightRGalyaviev2025-09-03 15:25:52 +03:00
aa5cb82295Admin: add title field, live preview, and delete; DB migration for title; show title in list; keep Admin button on public pagesRGalyaviev2025-09-03 15:06:07 +03:00
85eaf6a99aUI polish: global modern styles; Admin button pinned top-left across app and generated pages; index redirects to login for guestsRGalyaviev2025-09-03 14:37:36 +03:00