Commit graph

5 commits

Author SHA1 Message Date
oskar ddc2ed0c54 Zdjęcia obiektów: gen_images.py + 40 zdjęć dla 8 z 12 ofert
Skrypt pobiera 3–5 zdjęć ze strony z pola `www` frontmattera: og:image,
potem galeria z HTML-a. Odsiew: nazwa pliku (logo/ikona/mapa), waga >30 KB,
proporcje, przezroczystość i płaskie tło (plakietki), odcisk percepcyjny
(duplikaty z srcset). Na stronie marki z wieloma obiektami skrypt schodzi
do podstrony obiektu i filtruje adresy po jego nazwie własnej — inaczej
oba AlpenParksy dostałyby zdjęcia cudzych resortów.

Mapowanie oferta→zdjęcia to konwencja katalogowa (pages/img/<id>/NN.jpg),
pliki .md nietknięte. Bez zdjęć: booking.com i corones.it (blokada bota),
apart-ideal-serfaus (404 pod adresem z frontmattera), dom-dla-grupy
(koncept bez `www`).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-03 17:24:12 +02:00
oskar f276e99c0f Ischgl: rozstrzygnięcie VIP vs Silvretta — obowiązuje Silvretta
Tańsze stawki 385/231 € to VIP Skipass: tylko dla nocujących
w Ischgl/Mathon, 46 urządzeń, NIE działa na wyciągach Kappl. Nasz
PLAN A to nocleg w Kappl, więc obowiązuje Silvretta Skipass
(451/257 €, 75 urządzeń z Kappl i See) — ceny w tabelach zostają bez
zmian, zmienia się ich uzasadnienie.

Przy okazji dwa błędy w karcie, które rozstrzygnięcie odsłoniło:
tabela 451/257 € była podpisana "VIP Skipass" (to Silvretta), a sekcja
"Teren" przypisywała VIP-owi zasięg całego Paznaun łącznie z Kappl —
czyli dokładnie to, czego VIP nie obejmuje.

Pułapka wiekowa 8–<17 potwierdzona i zostaje w wyjazd.md; dopisany
plus po stronie Silvretty: dzieci <8 lat gratis (przy dwójce takich
dzieci grupa schodzi z ~5 150 € do ~4 640 €). Nowy wiersz "Dzieci
gratis" w tabeli porównawczej — b.d. tam, gdzie bundle nie ma danych,
zamiast domyślnego "brak".

Źródło: ischgl.com, cennik 26/27 (26.11.2026–02.05.2027), sprawdzone
03.08.2026.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-03 16:53:53 +02:00
oskar cfcfbdf6bf dane skipassowe od grupy 08.2026
Cztery sekcje skipassowe uzupełnione o stawki przysłane przez grupę,
każda z adnotacją źródła i datą. Istniejące tabele nietknięte —
w każdym regionie nowe liczby stoją obok starych, z datami obu.

Saalbach: peak season 440/330/220 € potwierdza dotychczasową prognozę
(i jest górną granicą, bo nasz termin jest poza szczytem).
Kronplatz: twardy cennik, ale sezonu 2025/26 — nie tego, na który
jedziemy; szacunki 26/27 zostają.
Ischgl: dane od grupy SPRZECZNE z cennikiem w karcie — 385/231 € wobec
451/257 € i próg młodzieży 10–17 wobec 8–<17. Obie wersje zestawione,
rozstrzygnięcie zostawione grupie; do budżetowania nadal wariant
droższy. Jeśli obowiązuje próg 10–17, znika "pułapka wiekowa", która
jest dziś głównym argumentem przeciw Ischgl w tabeli w wyjazd.md.
SFL: link informacyjny (portal agregujący, nie cennik oficjalny).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-03 16:48:58 +02:00
oskar ae9d170ba3 Regeneracja: 19 kart w pages/, graf 18 konceptów + 20 external
Karta zbiorcza pages/index.html grupowała tylko korzeń i oferty/ —
dziewięć konceptów wariantów dostawało własne karty, ale nie było ich
na liście. Grupowanie idzie teraz po katalogach najwyższego poziomu,
a nazwa grupy to pierwszy nagłówek index.md tego katalogu, więc kolejny
region wystarczy dodać do bundle'a, żeby pojawił się tu sam.

Linki wariantów w root index.md prowadzą do region.md, nie do index.md
podkatalogów: pliki zarezerwowane nie mają kart, więc w pages/ taki
odnośnik degenerował się do linku na samego siebie.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-03 16:23:25 +02:00
oskar c4f6cf3f1d Karty HTML konceptów: gen_pages.py + katalog pages/
Graf pokazywał strukturę, ale treść (ceny, dostępność, plusy/minusy)
siedziała tylko w panelu szczegółów viewera. gen_pages.py renderuje każdy
koncept do pages/<id>.html: metadane frontmattera jako tabelka (wszystkie
pola, też polskie rozszerzenia), body poniżej, plus pages/index.html
z listą kart.

Renderer: python-markdown, jeśli jest w systemie; tutaj go nie ma, więc
działa fallback na samej bibliotece standardowej (nagłówki, akapity,
tabele GFM, listy z - [ ], cytaty, kod, hr, inline bold/kursywa/kod/linki).

Linki miedzy konceptami przepisane na względne <id>.html, linki
zewnętrzne bez zmian. Pliki zarezerwowane (index.md, log.md) nie są
konceptami (§3.1) i nie mają kart — linki do nich prowadzą do listy kart.

Pliki .md nietknięte.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 18:46:08 +02:00