Skip to content

mod_pposmap 1.2.0

Choose a tag to compare

@pablop76 pablop76 released this 12 Aug 07:25
· 8 commits to main since this release

Wydanie funkcjonalne. Doszło 27 nowych ustawień, żadne nie zostało usunięte, więc aktualizacja jest zgodna wstecz: dotychczasowa konfiguracja i dodane punkty zostają nietknięte.

Nowe funkcje

Serwer kafelków (tryb Leaflet). Można podmienić dostawcę kafelków na dowolnego, z kluczem API dopisanym jako parametr adresu, i ustawić własną atrybucję w rogu mapy. Doszły też limity przybliżenia obsługiwane przez dostawcę. Gotowe adresy siedmiu stylów wraz z pasującymi atrybucjami są w README.

Pinezki. Każdy punkt może mieć własną ikonę, niezależną od domyślnej. Do tego konfigurowalna szerokość, wysokość i punkt zaczepienia, czyli miejsce obrazka, które faktycznie wskazuje współrzędne.

Lista punktów. Własny napis na przycisku, własne klasy CSS przycisku i ustawiana szerokość kolumny.

Formatowanie opisu. W dymku na mapie działa proste formatowanie HTML: pogrubienie, kursywa, odnośnik, lista.

Zakładka „O module". Opis modułu, instrukcja startowa, wykaz zachowań wymagających wyjaśnienia oraz informacja o aktualizacjach.

Dane strukturalne (Schema.org)

Znacznik JSON-LD został przebudowany z ItemList na @graph z identyfikatorami @id.

  • Dane lokalne każdego punktu: ulica, kod pocztowy, miejscowość, kraj, telefon, adres podstrony i profile zewnętrzne (sameAs).
  • Godziny otwarcia jako openingHoursSpecification. Właściwość openingHours ma dziedzinę ograniczoną do LocalBusiness i CivicStructure, więc dla typów opisujących samo miejsce była nieprawidłowa.
  • Dziewięć typów punktów do wyboru, od Place po LodgingBusiness.
  • Powiązanie z organizacją prowadzącą stronę tylko po świadomym włączeniu opcji. Przy mapie cudzych firm takie powiązanie wprowadzałoby wyszukiwarkę w błąd.
  • Możliwość wypisywania znacznika tylko na wskazanych pozycjach menu, zamiast na każdej stronie, na której moduł jest widoczny.

Poprawki

Bezpieczeństwo. Pola tytułu, opisu i godzin otwarcia miały filter="raw", a ich zawartość trafiała do HTML bez escapowania. Opis przeszedł na safehtml, tytuł i godziny na string, a wartości wstawiane do znaczników są escapowane po stronie JavaScriptu.

Rozjazd listy z markerami. Punkt z pustymi współrzędnymi lądował na 0,0 zamiast zostać pominięty, przez co numeracja listy przestawała zgadzać się z pinezkami. Teraz taki wiersz jest odrzucany w jednym miejscu i nie trafia ani na mapę, ani na listę, ani do danych strukturalnych.

Rozpychanie strony. Mapa jako element flex bez min-width była rozpychana przez pasek atrybucji Leafletu, co dawało poziomy pasek przewijania całej strony.

Pamięć podręczna przeglądarki. joomla.asset.json tkwił na wersji 1.0.0 od pierwszego wydania, więc po każdej aktualizacji przeglądarki dalej serwowały stary custom.js i style.css. Numer jest teraz synchronizowany z wersją modułu.

Pozostałe. Poprawiony start modułu przy odroczonym ładowaniu JavaScriptu, uporządkowany układ listy punktów oraz usunięta zależność od UIkita: moduł ma własny, neutralny styl i nie wymaga żadnego frameworku CSS.

Uwagi do aktualizacji

Po aktualizacji odśwież stronę z pominięciem pamięci podręcznej (Ctrl+Shift+R).

Moduł przestał być spersonalizowany pod konkretne wdrożenie i nadaje się do ogólnego zastosowania.