feat(prezentacja): wskazówki partnerów 1–3 — offset GMT, „Tu i teraz”, wspólne dane (PRE-19/20/21) #28
Reference in New Issue
Block a user
Delete Branch "feat/qol-partners-1-2"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Trzy pierwsze wskazówki od partnerów. Pozostałe (Skompiluj + PDF) zapisane jako
wymagania PRE-22…PRE-24; Q-14 rozstrzygnięte — LaTeX pójdzie jako osobna
usługa
render.1 · PRE-19 — offset względem GMT
Etykieta mówiła
Strefa (offset h)— nie było jasne, względem czego. TerazOffset względem GMT (h)z podpowiedzią. Krok 15-minutowy już był; dołożyłemzakres −12…+14, żeby nie dało się wpisać nieistniejącej strefy.
2 · PRE-20 — „Tu i teraz” zostawiał starą nazwę miejsca
Współrzędne skakały na bieżące położenie, ale w polu tekstowym zostawała stara
nazwa: formularz pokazywał jedno miejsce, a liczył dla innego. Cicha pomyłka.
Naprawione + pole czyszczone zanim poleci zapytanie, żeby przy braku sieci nie
została nieprawdziwa nazwa.
3 · PRE-21 — wspólne dane między zakładkami (+ imię i nazwisko)
Każdą zakładkę wypełniało się od nowa. Teraz raz wpisane dane wędrują za
użytkownikiem, a zmiana w jednej przenosi się na pozostałe.
Stan trzymany w localStorage, nie w sesji serwerowej — serwer zostaje
bezstanowy: żadnych danych urodzeniowych po stronie usługi (spójne z postawą
z LOG-32/PRE-16). Przy okazji dane synchronizują się też między osobnymi kartami
przeglądarki (zdarzenie
storage).Dołożone pole imię i nazwisko — potrzebne do nagłówka PDF (PRE-24).
Dwie rzeczy, które trzeba było domknąć, żeby to działało naprawdę:
formsync.jsw<head>zdefer— skrypty defer idąw kolejności dokumentu, więc zdąży odtworzyć współrzędne zanim
geo.jszbuduje mapę. Mapa startuje od razu we właściwym miejscu, zamiast przeskakiwać.
geo.jsustawia pola z kodu (.value = ...), co nie wywołuje zdarzeń —bez tego synchronizacja przegapiłaby każdy wybór z mapy, z wyszukiwarki
i z „Tu i teraz”. Dołożony
setVal(), który jawnie zgłaszachange.Zakładka bez danego pola (np. Sygnifikatory) nie kasuje wartości zapamiętanej
gdzie indziej; uszkodzony wpis w localStorage nie blokuje formularza.
Weryfikacja
Na żywym stacku (dane + logika + prezentacja) w przeglądarce:
dane z Horoskopu pojawiły się w Interpretacjach → zmiana godziny w Interpretacjach
dotarła do Kalendarza → pola nieobecne na zakładce (zodiak, system domów)
przetrwały → po POST imię zostało, a horoskop policzył się normalnie.
34 nowe testy strukturalne (JS-a w tym zestawie nie uruchomimy, a wszystkie te
regresje są ciche). Sprawdzone sabotażem. Całość: prezentacja 67 passed.
Zostaje
render)fix(prezentacja): offset względem GMT + nazwa lokalizacji po „Tu i teraz” (PRE-19/20)to feat(prezentacja): wskazówki partnerów 1–3 — offset GMT, „Tu i teraz”, wspólne dane (PRE-19/20/21)