# Project: bilety.brzezovka.pl ## Description Aplikacja webowa do sprzedazy biletow online z obsluga zamowien, platnosci i komunikacji potransakcyjnej. ## Core Value Uzytkownicy moga szybko i bezpiecznie kupic bilety online oraz otrzymac natychmiastowe potwierdzenie zakupu. ## Requirements ### Must Have - [x] Obsluga zakupu biletow end-to-end (wybor, checkout, finalizacja) - [x] Poprawne rejestrowanie zamowien i danych transakcyjnych - [x] Data layer purchase po finalizacji zakupu (wdrozone w Phase 1) - [x] Event purchase capturuje 100% zamowien - fires przy skladaniu, nie przy powrocie z P24 (Phase 2) - [x] Zgodnosc z RODO - baner zgody na cookies z Google Consent Mode v2 (Phase 3) - [x] Baner cookies dziala bez bledu `injectScripts is not defined` (Phase 4) ### Should Have - [x] Spojny tracking analityczny dla zdarzen ecommerce - Walidacja danych telemetrycznych i brak duplikatow eventow ### Nice to Have - Rozszerzony monitoring jakosci danych analitycznych ## Constraints - PHP + Medoo + prepared statements bez sklejania SQL - Bez logiki biznesowej w widokach - Bez zmian poza zakresem ecommerce tracking/cookie consent dla aktualnej pracy ## Key Decisions | Decision | Phase | Impact | |----------|-------|--------| | Event purchase na order-confirm (post-payment) | Phase 1 | Eliminuje falszywe konwersje | | ZMIANA: Event purchase na przelewy24 (pre-payment, post-order) | Phase 2 | Capturuje 100% zamowien, beacon transport | | Payload ecommerce budowany w backendzie | Phase 1 | Bezpieczenstwo, brak XSS | | cookieNoticePro.init() zamiast $.fn.cookieNoticePro() | Phase 3 | Zgodnie z dokumentacja biblioteki | | Consent Mode v2 default-denied przed GTM snippetem | Phase 3 | Wymog Google od marca 2024 | | Usuniecie niezdefiniowanego injectScripts() | Phase 4 | Naprawia blad konsoli przy cookies bez zmiany GTM/Consent Mode | ## Success Criteria - Event purchase trafia do data layer po zlozeniu zamowienia (osiagniete - Phase 2) - Payload zawiera wszystkie dostepne dane transakcyjne i produktowe - Integracja nie wplywa negatywnie na istniejacy checkout - Baner cookies zgodny z RODO + Google Consent Mode v2 (osiagniete - Phase 3) - Baner cookies nie generuje bledu `injectScripts is not defined` (osiagniete - Phase 4) --- *Created: 2026-04-19 20:20* *Last updated: 2026-05-08 after Phase 4 (v0.3 hotfix complete)*