8 Commits

Author SHA1 Message Date
a7d88be89c feat(realtime): Implement real-time updates for shopping list
Introduces WebSocket-based real-time updates for the shopping list.
Changes to items (add, mark, delete) are now instantly reflected
across all connected user sessions without requiring a page refresh.

This commit:
- Extends the WebSocket ConnectionManager to broadcast item updates.
- Modifies item manipulation endpoints (add, mark, delete) to trigger broadcasts.
- Updates the frontend to listen for update broadcasts and refresh the list.
- Updates README.md to reflect the new real-time update feature.
2025-11-05 13:42:07 +01:00
9033ac4054 fix(delete): Ensure delete password prompt shows for all users
The password prompt for deleting items was not appearing for non-admin
users because the backend endpoint to check for the password's
existence was incorrectly restricted to admins, and the frontend logic
did not properly handle the check.

This commit fixes the issue by:
- Allowing all authenticated users to check if a deletion password is set.
- Updating the frontend to correctly show the prompt based on this check.
2025-11-05 12:12:16 +01:00
0c670ed843 Add optional delete password and dark theme 2025-10-30 22:55:10 +01:00
58836f7af6 feat(lang): Automatische Spracherkennung implementieren
Implementiert die serverseitige Spracherkennung basierend auf dem
Accept-Language-Header des Browsers. Das Backend liefert nun die
index.html-Datei dynamisch mit dem korrekten lang-Attribut aus.

Das Frontend-JavaScript wurde aktualisiert, um das lang-Attribut des
HTML-Dokuments zu berücksichtigen und eine konsistente
Sprachbehandlung zu gewährleisten.

Zusätzlich behebt dieser Commit einen Fehler, bei dem die
Beispiel-Vorschläge nach dem Hinzufügen eines Artikels nicht
ausgeblendet wurden. Außerdem wird die Funktionalität des
"Hinzufügen"-Buttons und der Enter-Taste wiederhergestellt.
2025-10-28 21:41:17 +01:00
7b484d1c33 feat: Replace 'Select All' button with an icon
Replaced the text-based 'Select All' button with a more intuitive and space-efficient Bootstrap icon (check2-square).

This change enhances the user interface by providing a symbolic representation for the 'Select All' action.

- Replaced the button in `static/index.html` with an SVG icon.
- Removed the corresponding JavaScript code that sets the button's text content.
- Removed the now-unused `select_all_button` translations from `translations.py`.
2025-10-26 14:59:49 +01:00
4a5661af08 feat: Trennung von Artikeln nur nach Komma
Der "Hinzufügen"-Button trennt die Artikel nun nur noch nach Kommas und nicht mehr nach Leerzeichen.
2025-10-26 14:54:03 +01:00
9e0351beb4 feat: Implement mark and delete functionality 2025-10-26 14:42:50 +01:00
8d8ed476fb feat: Initial commit for web-app 2025-10-26 10:22:08 +01:00