---
# System prepended metadata

title: TS Backlog 2020q3

---

TS Backlog 2020q3
===

# Múzeum július elejei teszt kirakás

* OTP integráció
  * Payumserver integráció az adminba (Balázs review utáni kör)
  * OTP Payum modul (final review)
  * Payumserver kirakás teszt környezetbe (kész)
* Időpontfoglalós rendszer
  * darabszám limitek (final review először)
  * múzeum widgetbe bekötés (final review másodszor)
* Widget integrációs megoldás a múzeum oldalába
* Múzeum teszt kirakás
* Demo (Áronék)

# Múzeum w28

* Widget többnyelvűség
* Dashboard widgetek

# Külső tesztelések

* pár emberrel teszteltessük le a hajón, ha már a regisztrációs folyamat le van tisztítva

# Folyamat átnézés

Ezeket szeretnénk az augusztusi indulásig megvalósítani.

## Passeum.com

- regisztráció
  - magyarázzuk el, hogy most az ügyfél regisztrál
  - ? lehessen google/fb regisztráció is? de akkor hogyan kérjük be az azonosítót?
  - azonosító átnevezés/magyarázat
  - inkább cégnév+kontakt kellene, cégnév slug lehetne az azonosító?
  - az admin app default usere ugyanezt az email és jelszót kapja
  - belépés gomb túl hangsúlyos (tervekről kikerült most épp), helyette csak egy link
  - jelszó bonyolultságot kijelezhetnénk submit előtt
- aktiválás mellett már engedjük be a rendszerbe, írjuk ki neki, hogy aktiválnia kell, de kerülhet egyből a profiljára, ahol látja, hogy még nincs kész az admin app, de mindjárt... és egyszercsak kizöldül, és dolgozhat tovább. Viszont nem lehet addig szerződést aktívba állítani, amíg a fiókja nem aktív
- passeum.com -os levelek feladóját rendesen beállítani, DNS-t hozzálőni
- fiókom és profil oldalak
  - a kettő összevonása
  - bolt funkciók (később több is lehet)
    - szerződés folyamatának kezelése
      - ebben választja ki a konstrukciót (hozzá folyik be a pénz vagy hozzánk)
      - jelezzük neki, hogy ezzel még van dolga, hiába tudta elkezdeni használni az admint
      - szerződést csak letölti (egységes pdf), vagy kitöltheti az összes változó adatot és generálunk neki?
    - fizetési szolgáltató beállítás (ha olyan a szerződése)
    - számlázási szolgáltató beállítás (ha olyan a szerződése)
    - admin felhasználóinak kezelése (beléptető stb., meghívó küldése)
    - belépés a boltba (külön auth nélkül) bármelyik userrel

## Admin app

- Általános
  - tooltip-ek legyenek mindenhol, erre dolgozzunk ki koncepciót (https://kazzkiq.github.io/balloon.css/ **Kornél**)
  - integrálhatunk valami toolt is, ami guide-ként végigvezeti egyszer a usert a menüpontokon, funkciókon stb. (Keresni kellene ilyeneket.)
  - lábléc nem kell
  - esetleg Cypress tesztek??? nem prioritás, nagy effortot ne tegyünk rá, csak nézzünk rá, hogy van-e realitása használni

- Dashboard
  - ide volt tervezve egy tutorial video, ha csinálunk, akkor inkább valami marketinges legyen, fél perc, ami mutat a felületekből is
  - stat widgetek (pl. aktuális események)

- Események
  - eseményen belül lehessen minden funkciót elvégezni, ne kelljen kijönni (esemény beállítások, jegy/voucher létrehozás, akár még statok is)
  - eseményen belül legyen még egy szint, valami dashboard-szerűség
    - stat widgetekkel
    - valamilyen státusz modullal, ami megmutatja, hogy az egyes fázisokkal hogy állunk (pl. értékesítéshez az alapadatok és a jegyek kellenek, amint ez megvan, indulhat a widget); akár ebből (is?) tovább lehetne menni az esemény beállításokhoz
    - esemény beállítás gombok? akár külön, a mostani tabok megszüntetésével (ezekben úgysem dolgoznak párhuzamosan jellemzően)
    - ide kerülne át a Jegy/Voucher létrehozás 
    - legyen breadcrumb, az esemény neve vigyen vissza az esemény dashboardra
    - akár magát a jegy listát is kiemelni ide?
  - esemény alapadatok: kerüljön be a helyszín, kerüljön rá a jegyre is (lásd: https://git.a38.hu/ts/admin/issues/145) (lehet, hogy jobb lenne ezt nem helyszínnek hívni, vagy a locationt valami másnak, hogy ne kavarodjon)
  - szabályszerkesztők: on-the-fly is lehessen új helyszínt hozzáadni
  - jegybeváltás: ne szolgáltatásnak hívjuk, hanem Szabálynak. A nevét pedig magyarázzuk el
  - összes szerkesztő menüpont
    - dobozos elrendezést dobjuk ki
    - Zalai terveihez hasonló?
    - itt is mindenhol tooltipek!
  - jegyek létrehozáskor automatikusan kerüljenek be egy olyan Jegybeváltás (<- felületen átnevezni Beengedésről) szabályba, aminek a dátuma az esemény alapadatoknál lévő intervallum
  - jegyeknél jelöljük valami piktogrammal, hogy tartozik-e hozzá legalább 1 jegybeváltási szabály
  - jegyeknél írjuk ki a listába, hogy mennyi van eladva belőle
  - BUG jegyeknél tag címke beírás + enter után ottmarad a szöveg 
  - Jegybeváltás: Kapcsolódó szolgáltatások és  Automatikus összerendelés most kikerül (Brainbar miatt volt csak értelme)
- [ ] favicon csere passeumosra


- Megjelenés / template-ek
  - egyelőre minimál funkcióval (email fejléckép, widget színezés stb.)
  - külön menüpontban lehessen sablonokat felvinni és szerkeszteni, ezeket az eseménynél kiválasztani (régi kapcsolódó: admin/153-156)
  - fussuk át ezeket, hogy van-e bennük használható
    - https://git.a38.hu/ts/admin/issues/129
    - https://git.a38.hu/ts/admin/issues/184
    - Zalai Gábor összes tickete
  - Jegy kép
    - legyen színes
    - élesebb
    - jegy alatti szöveg és logó paraméterezhető

- Visszaváltás felület sitebuild átnézés

- Törzsadatok
  - helyszín szerkesztő (globális)


# Backend funkciók


## Admin

- [x] legyen env-be kivezetve az email settings
- [ ] alsó sávban a Terms helyett jobb oldalon legyen ott a verziószám, és ez valahogy automatikusan lenne jó, pl. git tagből kiszedni és beleírni egy static fileba a build során? Akkor csak annyi a feladat, hogy ha létezik ez a fájl, akkor kerüljön oda a tartalma; azt is írjuk oda, ha ez egy teszt app! 1h
- [x] logozás stdout-ra **SZINYA** (`app/config/config_(dev|prod).yml` példa)
- [ ] új beváltás felület wireframe (#188) - Nádas Peti munkájának átnézése -> Ákos devreview 5d **kiosztva**
- [ ] jegy újraküldés (elvileg kész, https://git.a38.hu/ts/admin/issues/144) 1d **kiosztva**
- [ ] payum integráció (final) 1d
- [ ] statisztika email szűrés (final, https://git.a38.hu/ts/admin/-/issues/68) 1d?
- [ ] jegyek visszaváltása (tranzakció és számla jóváíróval együtt) (itt az eredeti terv az akkor létrehozott ticketekkel: https://hackmd.io/th_HdASvSBKeUn9yCFQK9w)
  - [ ] függőben lévő visszaváltások kezelése és tárolása 4d
  - [ ] voucher visszaváltás/érvénytelenítés működik? admin vagy core fejlesztés kell hozzá? 1d
  - [ ] számlázz.hu integráció megvan (valszeg nincs még behúzva), csak a számlaszámot nem mentjük el a `payment_data` -ba 0.5d
  - [ ] order statból is lehessen indítani
- [ ] endroid QR generáló csere (final) 2h
- [ ] számlaszám eltárolás számlázás után #179 + core#171 (final) (becslés lent)
- [ ] Beengedési művelet módosítása (https://git.a38.hu/ts/admin/-/issues/147) ?
- [ ] ~~további barion paraméterek eseményenként (https://git.a38.hu/ts/admin/issues/181)~~ új ticket: 4d
  - [ ] ennek legyen egy törzse, amit a superadmin módosíthat a passeum.com -on, a törzsben fizetési+számlázási szolgáltató kombinációk vannak, ezek közül az **eseménynél** a szervező választhat, hogy melyiket aktiválja; ezt admin fiókonként külön kell tudni definiálni (registry-ben valahol a customer alatt, hasonlóan a customer data-hoz)
  - [ ] a statisztikánál a fizetés módja innen kellene, hogy töltődjön, és így el lehetne kerülni azt is, hogy a teszt és éles vásárlások összemosódjanak
- [ ] translation rendberakás (final) (becslés lent)
- [ ] Widget átalakítás ingyenes rendezvények esetén
(https://git.a38.hu/ts/admin/issues/192) 2d

**Még feldolgozandó**

- [ ] PKPass (a38.hu alapján)
- [ ] számla újraküldés és letöltés (ha megvan a számlaszám és a szolgáltató, akkor az order statban lehetne erre gomb)
- [ ] beváltás folyamat állítható legyen (most hibásan a brainbar-os touchscreen-es a default, ami nem jó)
- [ ] beváltás és beléptetés: a JS kezelje le, ha pár másodpercen belül újraküldjük ugyanazt a vonalkódot. A QR olvasók néha duplán sülnek el, és ilyenkor pl. beváltásnál a második leolvasás már sikertelen, ami megtévesztheti a hostesst.
- [ ] eseményszerkesztő felületeiben Ctrl-S -sel lehessen menteni, mutassa vizuálisan, hogy elkezdődött valami (pl. form elemek inaktív és/vagy spinner valahol vagy hasonló
- [ ] időpontfoglalásos (Balázstól)
  - [ ] maga az elnevezés backenden szerintem nem egyértelmű, ha az adminnak az iránya hogy idővel nyitásra kerüljön akkor szerintem érdemes lenne átgondolni az elnevezést angolul (szerintem showtime lenne a helyes, vagy valami hasonló, az appointment bár fordításban időpontot jelent, de én úgy gondolom más értelemben és nem egy műsör időpontot neveznek igy)
- [ ] kellene egy supervisor funkció, amivel lejárt kosarakat mégis finalized-re tudunk állítani. Ha valamiért előáll az a helyzet, hogy a fizetés sikeres volt, de az admin erről nem értesült, akkor sztornózás helyett ezzel a funkcióval ki lehetne küldeni a jegyeket és a számlát.
- [ ] Múltban lévő események adatait is meg lehessen nézni (readonlyban? vagy ugyanúgy?)
- [ ] cache-elt tartalmak (pl. /translations?locales=hu_HU) olyan fájlba legyenek kiírva, ami egyezik az URL-lel, hogy ki lehessen hagyni a PHP feldolgozást és nginx adja vissza közvetlenül



**Később**

- User módosító felület, ahol bármelyik user jelszavát (és egyéb dolgokat?) lehet szerkeszteni
- Helyszíni jegyértékesítő felület
- Backlog of backlog: https://hackmd.io/sFqgjddZQBKKglT4beNWLA
- számlázásnál ha AAM-et adunk meg (hogy ezt adjuk át a számlázz.hu -nak), akkor az 0-ra konvertál, ami így helyes, de ha léteznek más ilyen kódok is, amiknél nem feltétlenül 0 az érték, amit használni kellene, ezt kezelni kell valahogyan


## Core

- [ ] adott client-nek ne engedjünk ugyanazzal a névvel több location-t létrehozni (final) 2h
- [x] logozás stdout-ra **SZINYA** (config példa) - TODO ROBI `APP_LOG=errorlog`, `APP_LOG_LEVEL`
- [ ] oauth id generálás minden adminra külön legyen _lowprio_ 1d
- [ ] payment data editor endpoint #171 + admin#179 (final) 0.5d
- [ ] Kötelező egyediség az entry_code-ok esetében (final) 1d
- [ ] order statisztika szűrés bundle-re #28 (final) , majd bekötni az adminba: https://git.a38.hu/ts/admin/issues/65 1d (együtt)
- [ ] Jegybeváltás naplózása (final) 2h
- [ ] consumer kibővített logozás (final) 1h
- [ ] stat lekérdezés hiba https://git.a38.hu/ts/core/-/issues/120 4h
- [ ] kerekítés kezelése https://git.a38.hu/ts/core/-/issues/94 2h
- [ ] health endpoint bővítés https://git.a38.hu/ts/core/-/issues/81 2h
- [ ] beléptetéshez eltárolt adatok #161 (final) 4h

Egyebek

- [ ] docker-compose-ban memcached 1.6 frissítés okozna gondot? _lowprio_ 1d

## Widget

- [ ] jegy lista load spinner: https://git.a38.hu/ts/shop-widget/issues/9 (final) 1h
- [ ] payment data beküldése widget használatával
https://git.a38.hu/ts/admin/-/issues/197 (final) 1h
- [ ] cart itemek groupolása id szerint https://git.a38.hu/ts/admin/-/issues/46 (final) 0.5d
- [x] többnyelvű widget admin#135 (todo 1d) + admin#130 (final 2h) 
- [ ] widget chrome hiba (https://git.a38.hu/ts/shop-widget/-/issues/11) 1d _lowprio_
- [ ] ha most nyitva van a darabszamos ablak, es a kulso tovabb gombra kattintok, akkor ne menjen egybol tovabb, eloszor csak zarja be az ablakot 0.5d

Egyebek

- [ ] mobil datepicker (időpont foglaláshoz) (szabad helyeket ki tudja írni?) _lowprio_

## Wordpress

- [ ] regisztráció közben entert nyomva a Belépés gomb a default, szerintem az a gomb nem is kell oda **CROBI** - átalakul, valszeg deprecated

## Payumserver

- [ ] további fejlesztések (https://git.a38.hu/ts/payumserver/-/issues/10) 3d
- [ ] átnézés security szempontból, belső audit 2d
- [ ] teljes tranzakció logozás 1d
- [ ] sztornó működés kitalálása 1d
  - [ ] simplepay modulban sztornó #3 (final) review:0.5d
    - [ ] és ebben payumserver sztornó endpointok (elkészült a simplepay-es fejlesztésnél)
  - [ ] OTP sztornó 
  - [ ] barion sztornó callback-kel együtt (Pásztó Gábornál talán van egy POC) 
  - [ ] véglegesített sztornó esetén callback az admin felé
- [ ] Barion integráció (fizetés) 2d
- [ ] #8 befejezése (tesztek) 4h
- [ ] userkezelés API-n keresztül 2d
- [ ] demo fájlok törlése a webrootból (https://git.a38.hu/ts/payumserver/-/issues/11) 1h
- [ ] tranzakciók ütemezett frissítése (https://git.a38.hu/ts/payumserver/issues/6) 1d

## Ops

- [ ] kulturált és egységes kinézetű hibaüzenetek a konténerekből 4d
  - [ ] traefik (pl. ha nem indult még el a backend)
  - [ ] nginx (pl. ha timeout-ol az FPM)
  - [ ] alkalmazások (ne legyenek debug üzenetek)
  - mindegyik 1 db html legyen külső függőségek nélkül
- [ ] alap doksi fejlesztőknek