Repository navigation
mod_pposmap 1.3.0
Obsługa GeoJSON
Moduł wczytuje dane z pliku GeoJSON: wklejonego w panelu albo leżącego na serwerze. Obsługiwane są wszystkie typy geometrii wraz z GeometryCollection.
- Punkty (
Point,MultiPoint) zachowują się dokładnie jak dodane ręcznie: dostają pinezkę i dymek, trafiają na listę obok mapy i mogą wejść do danych strukturalnych. - Linie i obszary rysują się na mapie z konfigurowalnym kolorem, grubością i kryciem. Pokazują to, czego pinezka nie pokaże: obszar dojazdu, przebieg trasy, granicę gminy, strefę dostawy.
- Działa u obu dostawców: Leaflet przez
L.geoJSON, Mapbox przez źródłogeojsonz warstwamifilliline. Ten sam plik działa w obu trybach, nic nie trzeba konwertować. - Nazwy właściwości, z których czytany jest tytuł, opis, telefon, godziny, zdjęcie i pola adresowe, ustawia się w panelu. Domyślne pasują do eksportu z OpenStreetMap, a Moje Mapy Google używają
nameidescription. - Właściwości standardu simplestyle-spec zapisane w samym pliku mają pierwszeństwo przed ustawieniami modułu.
- Opcja dopasowania widoku do danych ustawia środek i przybliżenie tak, żeby zmieściły się wszystkie punkty i obszary.
Bezpieczeństwo i jakość danych: treść z pliku jest filtrowana po stronie PHP (tytuł przez strip_tags, opis w trybie safehtml), wczytywanie z pliku ogranicza się do katalogu witryny i rozszerzeń .geojson/.json, obiekt bez nazwy nie trafia do danych strukturalnych, a współrzędne poza zakresem są pomijane zamiast lądować w losowym miejscu świata.
Usuwanie wszystkich punktów naraz
Przycisk czyszczący całą listę punktów jednym kliknięciem, zamiast kasowania wiersz po wierszu. Zabezpieczenie przed przypadkowym usunięciem jest trzywarstwowe:
- pytanie potwierdzające podające liczbę punktów,
- przycisk Cofnij wstawiający wiersze z powrotem na ich pierwotne miejsca,
- nic nie trafia do bazy przed kliknięciem Zapisz, więc wyjście z modułu bez zapisywania przywraca stan.
Pozostałe
Obrazki i pinezki obsługują teraz adresy bezwzględne, bo właściwość ze zdjęciem w GeoJSON bywa pełnym adresem obcego serwera. Punkt bez tytułu i bez opisu nie tworzy już pustego wiersza na liście.
Aktualizacja jest zgodna wstecz: żadne pole nie zostało usunięte ani przemianowane, ustawienia i dodane punkty zostają nietknięte.