Ke stažení

v1.2.10

Poslední aktualizace: 11:11 25.3.2026

Co je nového ve verzi 1.2.10

Opravy

  • Emoji Alchymie: oprava čtení odpovědi API — server vracel data.state_json, klient četl state_json → pull vždy vracel null → cross-device sync nikdy nefungoval
  • Emoji Alchymie: ochrana před přepsáním serveru lokálním stavem když pull selhal (_pullFailed flag)
Plánované funkce
  • Co dál? :D

Stáhnout

Celý changelog
Verze 1.2.10 Nové

Opravy

  • Emoji Alchymie: oprava čtení odpovědi API — server vracel data.state_json, klient četl state_json → pull vždy vracel null → cross-device sync nikdy nefungoval
  • Emoji Alchymie: ochrana před přepsáním serveru lokálním stavem když pull selhal (_pullFailed flag)
Verze 1.2.9

Opravy

  • Emoji Alchymie: oprava přepsání server stavu prázdnou hrou při spuštění na novém zařízení bez síťového připojení
  • Emoji Alchymie: při konfliktu (oba stavy mají unikátní prvky) se zobrazí dialog se třemi možnostmi: Sloučit / Server / Lokální
Verze 1.2.8

Nové funkce

  • Arkádové hry: Number Rush — klikej čísla 1→50 na mřížce 5×5 co nejrychleji, žebříček časů
  • Arkádové hry: Emoji Alchymie — kombinuj prvky a objev 100+ kombinací (87 prvků v 5 tierech), trvalý postup
  • Arkádové hry: Klávesnicové ovládání — Had (šipky/WASD), Flappy Bird (mezerník/↑/Enter), Hledání min (šipky + F pro vlajku), Zhasni! (šipky + Enter)
  • Emoji Alchymie: cross-device sync objevených prvků přes server (set union merge, offline retry)
Verze 1.2.7

Opravy

  • Offline chybové hlášky: místo syrových DioException textů se zobrazí přívětivá česká zpráva (toast/snackbar s wifi-off ikonou)
  • Karma a Vybavení: prázdný stav při výpadku sítě nyní ukazuje widget „Žádné připojení" s tlačítkem Opakovat
  • Notifikace: chyba při načítání se nyní zobrazí v UI (dříve se tiše ignorovala)
  • Po obnovení síťového připojení se automaticky spustí synchronizace dat
Verze 1.2.6

Nové funkce

  • Nastavení: přepínač HW čtečky čárových kódů (Zebra a podobná zařízení) — místo kamery zobrazí textové pole pro HW skener
  • Arkádové hry: Hledání min (3 obtížnosti, záznam i prohraných her pro statistiku výhry)
  • Arkádové hry: Snake (3 rychlosti/velikosti pole, swipe ovládání, CustomPainter rendering)
  • Arkádové hry: Flappy Bird (3 obtížnosti, fyzikální engine s Ticker, CustomPainter)
  • Arkádové hry: Zhasni! / Lights Out (3 obtížnosti, AnimatedContainer buňky se záříváním)
  • Arkádové hry: Color Match (najdi odlišný čtvereček, HSL barvy, stupňující se obtížnost)
  • Arkádové hry: Stany a stromy / Tents & Trees (3 obtížnosti, validace libovolného řešení)
  • Arkádové hry: Wordle (denní výzva + volná hra, česká slova bez diakritiky, responsivní klávesnice)
  • Arkádové hry: Click Speed Test / CPS (5/10/30 sekund, progress bar, první klik startuje hru)

Opravy

  • QR skener: tlačítko „slide to back" přesunuto do horní části obrazovky
  • QR skener (HW režim): textové pole automaticky získá focus po odeslání skenu (aby HW skener nemusel klikat znovu)
  • Wordle: klávesnice a mřížka se přizpůsobí výšce obrazovky (LayoutBuilder, dynamické velikosti)
  • SafeArea: opraveno v detail hry a 2048 (ochrana před status barem)
Verze 1.2.5

Nové funkce

  • QR Stopovaná: offline cache (JSON v Hive), žlutý banner s datem posledního sync
  • QR Stopovaná: scoreboard offline placeholder (wifi_off icon)
  • QR Stopovaná: obrázky stanovišť — stanoviště s sImageUrl zobrazují fotku jako dominantní prvek v seznamu (Card s thumbnailem 80×80, overlay checkmark při splnění)
  • QR Stopovaná: obrázek stanoviště v potvrzení po skenu (_AcceptedSheet, deep link screen)
  • QR Stopovaná: přepínač seznam/dlaždice v záložce Stanoviště (ikona v pravém horním rohu)
  • QR Stopovaná: kliknutí na obrázek stanoviště otevře fullscreen prohlížeč s pinch-to-zoom
  • Nastavení: nová karta „QR Stopovaná" — zámek skeneru (slider pro ukončení zabraňuje náhodnému zavření)
  • Arkádové hry: nová sekce v seznamu her, generická infrastruktura (ArcadeGameResult, ArcadeSavedGame, ArcadeLeaderboardEntry, Hive typeId 21/22)
  • Arkádové hry: ArcadeScoreService — lokální uložení + automatický sync na server (POST /api/v2/arcade/result)
  • Arkádové hry: ArcadeScoreProvider — stav žebříčku, historie, saveResult
  • Hra 2048: volba pole 3×3 / 4×4 / 5×5; hra nekončí na 2048 (jen plné pole)
  • Hra 2048: perzistence rozehrané hry přes Hive (ArcadeSavedGame), obnova při návratu
  • Hra 2048: 3 záložky — Hra, Moje historie, Žebříček (server data)
  • Hra 2048: GestureDetector swipe + KeyboardListener šipky (desktop/web)
  • Hra 2048: barevné dlaždice, timer v AppBar, AnimatedContainer animace

Opravy

  • QR Stopovaná: stanoviště bez scannedAt se neoznačovala jako nalezená (API vrací všechna stanoviště v progress, ne jen naskenovaná)
Verze 1.2.4

Nové funkce

  • Hry: nový modul QR Stopovaná (rychlá akce v dashboardu)
  • Hry: seznam her s módy (Volná / Řetězová / Týmová) a stavem (Aktivní / Skončila)
  • Hry: detail hry — záložky Stanoviště, Scoreboard, Můj postup
  • Hry: QR scanner s online skenem (okamžitý výsledek) a offline frontou (Hive)
  • Hry: ochrana řetězového módu — kontrola driftu hodin vůči serveru (Date header), blokování při odchylce > 5 minut
  • Hry: GPS souřadnice skenů (best-effort, oprávnění se ptá až při vstupu do modulu)
  • Hry: offline synchronizace — batch odesílání čekajících skenů při reconnectu
  • Hry: fallback pro web/desktop — ruční zadání kódu stanoviště
  • Deep linky: tabis://qr/{kod} otevře přímý sken stanoviště; tabis://equipment/{barcode} a tabis://location/{barcode} otevřou vyhledávání vybavení

Opravy

  • Reakce: picker přepracován z BottomSheet na Dialog s animovanými tlačítky a zvýrazněním aktivní reakce (platí pro Nástěnku i detail události)
Verze 1.2.3

Nové funkce

  • Nástěnka: nová obrazovka ve stylu sociální sítě (rychlá akce v dashboardu)
  • Nástěnka: každá událost jako příspěvek — velký barevný odznak s body, jméno příjemce, popis
  • Nástěnka: inline média — swipeable carousel obrázků a videí přímo v příspěvku
  • Nástěnka: reakce s optimistickým updatem a emoji picker přímo v příspěvku
  • Nástěnka: náhled posledních 2 komentářů, ghost řádek pro přidání komentáře
  • Nástěnka: podpora offline režimu (data z lokální cache)
  • Nástěnka: extensibilní architektura (FeedItem abstrakce pro budoucí ankety atd.)
  • Nastavení: přepínač viditelnosti Nástěnky v rychlých akcích
  • Detail příloh: navigační šipky vlevo/vpravo a tečkový indikátor stránky při prohlížení galerie
  • Detail události: přidány reakce 🔥 (fire) a 💩 (poop)
  • Nastavení: výchozí rychlé akce při čisté instalaci nyní zahrnují Nástěnku (místo Události)

Opravy

  • SafeArea: oprava překrytí obsahu systémovou navigací v barcode search, detail skupiny vybavení, karma žebříček a notifikace
Verze 1.2.2

Nové funkce

  • Vybavení: detail předmětu zobrazuje klikatelný breadcrumb cestu umístění (načteno z locationPath API); klik na uzel přejde na filtr skupiny nebo barcode search
  • Vybavení: detail skupiny — nový filtr „Umístění" s prohledávatelným bottom sheet pickerem; přímý přechod na lokaci z barcode search
  • Vybavení: barcode search — výsledek lokace zobrazuje breadcrumb cestu a pod-lokace (chipy); klik přejde přímo do skupiny s předvybraným filtrem lokace
  • Vybavení: barcode search — přijímá initialBarcode parametr pro okamžité vyhledání (např. sken z jiné obrazovky)
  • Nastavení: při čisté instalaci jsou ve Rychlých akcích předvoleny jen Táborníci, Události a Přílohy (Vybavení, Karma, Hledat je třeba zapnout v Nastavení)

Opravy

  • Detail osoby: bulk eventy přiřazené více osobám se nyní zobrazují i sekundárním osobám (oprava filtru ignorujícího aPersons)
  • Detail osoby: avatar u eventů v historii nyní zobrazuje originátora události místo primární osoby eventu
Verze 1.2.1

Opravy

  • Dashboard: oprava příliš světlého pozadí citátu dne v sekci „Live karma dne" v dark mode
Verze 1.2.0

Nové funkce

  • Nastavení: možnost skrýt/zobrazit jednotlivá tlačítka v sekci Rychlé akce na dashboardu (Táborníci, Události, Přílohy, Vybavení, Karma)
  • Dashboard: prázdný stav Rychlých akcí zobrazí nápovědní text s odkazem na Nastavení
  • Karma modul: osobní karma karta na dashboardu s hodnotou, statusem a průběhovým grafem (LineChart) za přihlášeného uživatele
  • Karma modul: live sekce „Karma dne" na dashboardu (raketa, černá díra, influencer, denní statistiky, vtipný citát)
  • Karma modul: nový screen „Karma žebříček" přístupný přes quick action tlačítko; seřazený žebříček s filtrací roku, klepnutím na řádek přechod na detail táborníka
  • Karma modul: karma karta v detailu táborníka — hodnota, status badge, karmické tituly jako Chipy (emoji + název), tlačítko pro zobrazení průběhu karmy v modal bottom sheetu
  • Dashboard: přidáno 5. tlačítko „Karma" (⭐) do rychlých akcí; quick actions restrukturovány na dva řádky (3+2)
  • Dashboard: odebrán sloupcový graf „Top 10 hříšníků", nahrazen karma kartou
  • Vybavení (Equipment) modul: nové API endpointy v2 pro skupiny, položky, výpůjčky, servisní záznamy a lokace vybavení
  • Vybavení: nové modely (EquipmentGroup, EquipmentItem, EquipmentLoan, EquipmentServiceRecord, EquipmentLocation, EquipmentAttachment) s Hive persistencí
  • Vybavení: nové screeny — seznam skupin, detail skupiny/položky, přidání/editace položky, výpůjčka, servisní záznam
  • Nastavení: automatické obnovení karmy (dashboard + historia) při změně vybraného roku
  • Vybavení: nový screen „Hledat podle čárového kódu" — vyhledávání předmětů a umístění přes všechny skupiny najednou; ruční zadání nebo skenování kamerou (iOS/Android)
  • Dashboard: nové rychlé akce tlačítko „Hledat" (ikona QR skeneru, barva indigo) pro přímý přístup k vyhledávání podle čárového kódu
  • Nastavení: nový toggle „Hledat (čárový kód)" ve správě rychlých akcí na dashboardu
Verze 1.1.7

Opravy

  • Reakce: oprava API endpointu na správný v2 REST formát (/api/v2/reactions/{eventId} path parametr místo query parametru)
  • Doplněny chybějící emoji 🔥 (fire) a 💩 (poop) do mapy reakcí na dashboardu a v seznamu událostí

Ostatní

  • Aktualizována API dokumentace: přidány sekce Karma (v2), Reakce (v2), Vybavení (v2), verzování API
  • Přidána česká verze API dokumentace (API_CZ.md)
Verze 1.1.6

Nové funkce

  • Emoji reakce na události: uživatel může přidat jednu ze 6 reakcí (👍 ❤️ 😂 😮 😢 😡) v detailu události; tap na vlastní reakci ji odebere, tap na jinou přepne; long-press nebo ikona „Reagovat" otevře picker všech typů; optimistic UI — změna se projeví okamžitě a vrátí se zpět při chybě
  • Filtrování událostí podle roku: seznam událostí předává nYear parametr na API a při změně roku se automaticky přenačte
  • Nastavení — výběr roku: RadioListTile nahrazen kompaktním DropdownButton; přidána možnost „Všechny roky" (zobrazí události ze všech roků najednou); dostupné roky od 2020 do aktuálního roku
  • Nastavení — výběr barevného režimu: RadioListTile nahrazeny kompaktním SegmentedButton (Auto / Světlý / Tmavý)
  • Dashboard: skládané avatary a výpis všech jmen pro události s více osobami; zobrazení emoji souhrnu reakcí pod každou událostí (lazy load na pozadí)
  • Seznam událostí: zobrazení emoji souhrnu reakcí pod každou událostí (lazy load na pozadí)
  • Přílohy: automatický refresh miniatur po uploadu — opakovaný polling (max 5×, každé 4 s) s evictem cache, dokud server nedokončí zpracování
  • Offline fallback v seznamu událostí filtruje lokální cache podle vybraného roku
Verze 1.1.5

Nové funkce

  • Více osob na jedné události (M:N): nový model EventPerson s příznakem isPrimary, volitelným přepsáním bodů a jménem; server vrací pole aPersons v detailu události
  • Detail události: seznam všech přiřazených osob s individuálními body; každá osoba je klikatelná (přechod na detail táborníka)
  • Seznam událostí: překrývající se avatary pro události s více osobami (max 4 viditelné + počítadlo přebytku)
  • Sheet pro správu osob v události: přidání/odebrání táborníků, nastavení individuálních bodů (prázdné pole = dědí sdílené body události)
  • Google Sign-In na webu: nativní GIS tlačítko (renderButton) místo popup flow — credential response vždy obsahuje idToken, bez CORS omezení
  • API updateEvent rozšířeno o volitelné parametry addPersonIds, removePersonIds a personPoints

Opravy

  • Web: aplikace se zasekávala na splash screenu při prvním spuštění po aktualizaci, která přidala nový Hive box — blokovaná IndexedDB upgrade transakce způsobovala nekonečné čekání; přidán _openBoxSafe s timeoutem a automatickým smazáním zaseknutého boxu
  • PersonSummary.fromJson: oprava parsování fPoints — pole může přicházet jako String nebo číslo; generovaný kód _$PersonSummaryFromJson toto nezvládal
  • Google Sign-In na webu: serverClientId nastaveno podmíněně na null při kIsWebgoogle_sign_in_web assertion zakazuje serverClientId na webu
Verze 1.0.6

Nové funkce

  • Přihlášení přes Google (OAuth): dostupné na Android, iOS, macOS a Webu; tlačítko se nezobrazuje na Windows/Linux
  • Rychlý login: po odhlášení si aplikace pamatuje username posledně přihlášeného uživatele; při příštím spuštění stačí zadat jen heslo; tlačítko „To nejsem já" přepne na plný přihlašovací formulář
  • Rozšiřitelná OAuth architektura: přidání dalšího poskytovatele (GitHub, Apple…) vyžaduje pouze novou metodu v AuthProvider a jeden řádek v sekci OAuth tlačítek
  • Varování před přepnutím uživatele: klepnutí na „To nejsem já" zobrazí potvrzovací dialog upozorňující na možné ztracení neuložených změn předchozího uživatele
  • Varování při odhlášení: pokud jsou ve frontě nevysynchronizované změny, dialog odhlášení zobrazí jejich počet a upozornění, že budou zahozeny
  • Detekce přepnutí uživatele na dashboardu: pokud se přihlásí jiný uživatel než v předchozí session a ve frontě jsou čekající změny, zobrazí se dialog s možností odhlásit se (a obnovit předchozího uživatele jako rychlý login) nebo změny smazat a pokračovat
  • Kontrola nové verze se nově spouští také při návratu aplikace z pozadí (AppLifecycleState.resumed), nejen při startu
  • Při přihlášení se ukládají groupId a groupName ze serverové odpovědi (vedle stávajícího userId/userName)

Opravy

  • Sdílená funkce friendlyError extrahována z PendingChangesScreen do lib/utils/error_utils.dart — použita také v obrazovce úpravy táborníka; chybové snackbary zobrazují červené pozadí
  • DEB balíček: přidána chybějící závislost libnotify4 (vyžadována local_notifier)
Verze 1.0.5

Nové funkce

  • Kontrola nové verze se nově spouští také při návratu aplikace z pozadí (AppLifecycleState.resumed), nejen při startu
  • Sekce „O aplikaci" v Nastavení: zobrazuje verzi aplikace, přihlášeného uživatele, ID uživatele a adresu API serveru
  • Smysluplné názvy nahrávaných příloh: soubory z galerie zachovají původní název, fotografie a videa z fotoaparátu dostanou název složený z typu (foto/video), uživatelského jména a data/času pořízení (např. foto_jnovak_20260223_143022.jpg)
  • Na desktopu se v chybovém stavu videa zobrazí thumbnail s ikonou přehrávání (pokud je k dispozici)
  • Bezpečnostní notifikace (security_new_device, security_brute_force) lze rozbalit klepnutím pro zobrazení celého textu; druhé klepnutí na rozbalenou notifikaci ji označí za přečtenou
  • FAB tlačítko „Přidat táborníka" v seznamu všech táborníků (obrazovka přístupná přes Rychlé akce → Táborníci)
  • FAB tlačítko „Nahrát přílohu" v seznamu příloh: umožňuje vyfotit, vybrat z galerie nebo nahrát video a přiřadit ke zvolené události

Opravy

  • Android Doze mode: polling timer se nyní pozastavuje, když jde aplikace do pozadí (AppLifecycleState.paused), a obnovuje při návratu do popředí — eliminuje zbytečné chyby DNS lookup v logcatu
  • Windows notifikace bez MSIX: přechod na local_notifier, který automaticky vytvoří Start menu zkratku při prvním spuštění bez admin práv — notifikace fungují i u non-MSIX distribuce
  • Otevření videa v prohlížeči na nepodporovaných platformách nyní předává přihlašovací token (?token=...) — uživatel se tak nedostane na stránku 401 Unauthorized
  • Oprava zatuhnutí aplikace při vypršení nebo smazání refresh tokenu — aplikace nyní automaticky odhlásí uživatele a přejde na přihlašovací obrazovku
  • Oprava překrytí obsahu a tlačítek systémovou navigační lištou Androidu: přidána SafeArea v obrazovce úpravy táborníka, zvýšen spodní padding seznamů překrytých FAB tlačítkem (Dashboard, Události, Detail táborníka), opravena SafeArea v bottom sheetu detailu události
Verze 1.0.4

Nové funkce

  • Kontrola nové verze při spuštění — banner na dashboardu s odkazem na stažení
Verze 1.0.3

Nové funkce

  • Přiřazení existující přílohy k události bez nutnosti nového uploadu — z detailu události i z detailu přílohy, s multi-selectem a vyhledáváním

Opravy

  • Na desktopu (Linux/Windows) se nyní vždy zobrazí nabídka přidání přílohy místo přímého otevření file pickeru
  • Oprava pádu webové verze po přihlášení — Hive databáze se na webu inicializovala nesprávně přes nativní path_provider (nepodporováno na webu), nyní používá initFlutter() s IndexedDB
  • Oprava pádu grafu "Top 10 hříšníků" při kladných bodech — nesprávný výpočet minY způsoboval nulový nebo záporný rozsah osy Y v fl_chart
Verze 1.0.2

Nové funkce

  • Světlý, tmavý a systémový barevný režim s přepínačem v nastavení

Opravy

  • Oprava barev karet v detailu události pro tmavý/světlý režim
  • Oprava tmavého pozadí splash screenu v tmavém režimu
  • Oprava hardcoded světlých barev pro tmavý režim
Verze 1.0.1

Nové funkce

  • Přidána podpora pro video upload a stream videi do příloh
Verze 1.0.0

Nové funkce

  • Inicální vydání aplikace TabIS
  • Správa táborových akcí a událostí
  • Přihlašování účastníků a vedoucích
  • Základní nastavení a přizpůsobení aplikace
Kontrolní součty (SHA-256)
82521578c10b582d0f9d14e69dd536a7bfc2f73fb222987ae760082b9d4f0928
tabis2-app-1.2.10-arm64-v8a.apk
802215784ea04eac9a46de1cbf262e5ca57844aefa5321e7839a070ea40955ff
tabis2-app-1.2.10-armeabi-v7a.apk
d9c385308b0135b822a079fa9725881ff36c21b52e509ccbb6141a0cefd9f502
tabis2-app-1.2.10-x86_64.apk
fa916438018aa627d8d08d72d5e7b3205d4335287bb3bcad2c0123d3a7d6ad28
tabis2-app_1.2.10-1_amd64.deb
9c912a1341edaf8210628df9b97247b03ea631b8692b7eb6404e8cc5efc6981b
tabis2-app-1.2.10-windows.msix
f5eba2e12bbd334e0028d2cd71540063507259c5145313843c8e38444a23ffc2
tabis2-app-1.2.10-windows.zip
a1f1f45891d9dc437b21d1449f211873a7dd625794dad526c793277ad8194838
tabis2-app-1.2.10-web.tar.gz

© TabIS v1.15.1 Ochrana osobních údajů