Einkaufsliste - Online-Warenkorb-Funktion pro Liste ein-/ausschaltbar #226

Closed
opened 2026-09-30 09:35:20 +02:00 by lena · 2 comments
Collaborator

Story: Online-Warenkorb auf der Einkaufsliste abschaltbar machen

As a Nutzer, der nicht online einkauft,
I want to die Online-Warenkorb-Funktion auf meiner Einkaufsliste ausschalten koennen,
so that die Kaestchen und Schaltflaechen dafuer mich nicht stoeren und keinen Platz belegen.

Kontext (verifiziert im Code):

  • Seit #216 hat jedes Produkt auf der Einkaufsliste ein Kaestchen "im Online-Warenkorb" (ShoppingProductItem.tsx), dazu oben ein Sammel-Loeschen fuer alle Produkte im Warenkorb (ShoppingListPage.tsx) und den Warenkorb-Abgleich (#90).

Acceptance criteria:

  • Die Online-Warenkorb-Funktion laesst sich fuer eine Einkaufsliste ein- und ausschalten (z. B. ueber das "..."-Menue der Liste).
  • Ausgeschaltet: kein Warenkorb-Kaestchen an den Produkten, kein Sammel-Loeschen oben, kein Warenkorb-Abgleich; der Platz wird fuer den Produkttext genutzt.
  • Eingeschaltet: Verhalten wie heute.
  • Standard fuer bestehende und neue Listen: eingeschaltet (nichts aendert sich ungefragt).
  • Beim Ausschalten gehen gesetzte Warenkorb-Markierungen nicht verloren; beim Wiedereinschalten sind sie wieder da.

Offen / Annahme:

  • Ob die Einstellung fuer alle Mitglieder der Liste gilt (Listen-Einstellung) oder nur fuer mich (persoenlich), ist nicht festgelegt. Vorschlag: Listen-Einstellung, wie Farbe/Symbol.

Verwandt: #216, #90

## Story: Online-Warenkorb auf der Einkaufsliste abschaltbar machen **As a** Nutzer, der nicht online einkauft, **I want to** die Online-Warenkorb-Funktion auf meiner Einkaufsliste ausschalten koennen, **so that** die Kaestchen und Schaltflaechen dafuer mich nicht stoeren und keinen Platz belegen. **Kontext (verifiziert im Code):** - Seit #216 hat jedes Produkt auf der Einkaufsliste ein Kaestchen "im Online-Warenkorb" (`ShoppingProductItem.tsx`), dazu oben ein Sammel-Loeschen fuer alle Produkte im Warenkorb (`ShoppingListPage.tsx`) und den Warenkorb-Abgleich (#90). **Acceptance criteria:** - [ ] Die Online-Warenkorb-Funktion laesst sich fuer eine Einkaufsliste ein- und ausschalten (z. B. ueber das "..."-Menue der Liste). - [ ] Ausgeschaltet: kein Warenkorb-Kaestchen an den Produkten, kein Sammel-Loeschen oben, kein Warenkorb-Abgleich; der Platz wird fuer den Produkttext genutzt. - [ ] Eingeschaltet: Verhalten wie heute. - [ ] Standard fuer bestehende und neue Listen: eingeschaltet (nichts aendert sich ungefragt). - [ ] Beim Ausschalten gehen gesetzte Warenkorb-Markierungen nicht verloren; beim Wiedereinschalten sind sie wieder da. **Offen / Annahme:** - Ob die Einstellung fuer alle Mitglieder der Liste gilt (Listen-Einstellung) oder nur fuer mich (persoenlich), ist nicht festgelegt. Vorschlag: Listen-Einstellung, wie Farbe/Symbol. Verwandt: #216, #90
lena self-assigned this 2026-09-30 13:51:26 +02:00
Author
Collaborator

Claimed by session "Go [da5cae]"

Starting work: per-list setting (shared by all members, like colour/icon) to switch the online-cart feature on/off. Default on for new and existing lists; cart marks are kept while off.

Claimed by session "Go [da5cae]" Starting work: per-list setting (shared by all members, like colour/icon) to switch the online-cart feature on/off. Default on for new and existing lists; cart marks are kept while off.
Author
Collaborator

Done (commits 65d66612 backend, 8d922695 frontend).

Scope: New list-wide setting IsOnlineCartEnabled on shopping lists (default on; migration default backfills every existing list). Switched via the list page's "..." menu entry "Online-Warenkorb verwenden - An/Aus". Off hides the per-item cart toggle (space goes to the product name), the header bulk-remove button and the cart check panel entry. IsInCart marks are never touched, so switching back on restores them.

Decisions: List setting shared by all members (as proposed in the issue); any member may switch it (it only hides UI, no data is lost). Broadcast over the existing shopping-list WS channel so other members' open pages follow live. Duplicating a list keeps the setting. All ShoppingListBroadcastDto construction sites carry the real value.

Tests: 5 new handler tests (incl. pre-existing-list backfill test per the existing-lists rule, explicit-false persistence, marks kept), 1 duplicate test; 3 page tests + 1 item test in the frontend. Backend 1119/1119, frontend 1565/1565 green, build clean. Security review: no findings.

Done (commits 65d66612 backend, 8d922695 frontend). **Scope:** New list-wide setting IsOnlineCartEnabled on shopping lists (default on; migration default backfills every existing list). Switched via the list page's "..." menu entry "Online-Warenkorb verwenden - An/Aus". Off hides the per-item cart toggle (space goes to the product name), the header bulk-remove button and the cart check panel entry. IsInCart marks are never touched, so switching back on restores them. **Decisions:** List setting shared by all members (as proposed in the issue); any member may switch it (it only hides UI, no data is lost). Broadcast over the existing shopping-list WS channel so other members' open pages follow live. Duplicating a list keeps the setting. All ShoppingListBroadcastDto construction sites carry the real value. **Tests:** 5 new handler tests (incl. pre-existing-list backfill test per the existing-lists rule, explicit-false persistence, marks kept), 1 duplicate test; 3 page tests + 1 item test in the frontend. Backend 1119/1119, frontend 1565/1565 green, build clean. Security review: no findings.
lena 2026-09-30 14:33:12 +02:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
robert/todo#226
No description provided.