Interaktywny wykaz dostępnych rowerów miejskich na wskazanych stacjach systemu VETURILO

Wstęp
Projekt ma polegać na przygotowaniu interakcyjnej strony zawierającej wybrane stacje systemu VETURILO z informacją, ile jest tam wolnych rowerów do wypożyczenia oraz ile jest wolnych stojaków do oddania roweru. Na stronie Veturilo jest mapka z takimi informacjami, ale nie odświeża się ona automatycznie (tylko jednorazowo przy ładowaniu strony), pokazuje ona cały obszar miasta, a nie wybrany/interesujący mnie teren - generalnie jest mało wygodna. A ponieważ znalazłem w internecie informację o API usługi (szczegóły poniżej), to postanowiłem napisać swoją prostą aplikację (głównie by samemu wygodnie z niej sobie korzystać). Firma Nextbike, która obsługuje w Polsce system o nazwie VETURILO (i ma też polskojęzyczną stronę internetową), oferuje w całej Europie tego typu usługi. Taką pełną listę stacji wraz z dostępnymi na nich rowerami można pobrać z adresu https://nextbike.net/maps/nextbike-official.xml (a także http://api.nextbike.net/maps/nextbike-official.xml), z tego pliku XML możemy wyłuskać listę krajów oraz miast, gdzie jest dostępna taka usługa, a potem (znając wartość identyfikatora city takiej lokalizacji) pobierać już informacje tylko z wybranego miasta. Przykładowo lista stacji w Warszawie jest do pobrania pod adresem http://api.nextbike.net/maps/nextbike-official.xml?city=210.
I co ważne, powyższe dane XML są dostępne do pobrania z dowolnej domeny (nie ma problemu z same origin policy, o którym pisałem w artykule o pobieraniu zawartości zewnętrznych stron w JavaScripcie, ponieważ serwis udostępnia te dane dzięki zastosowaniu cross-origin resource sharing).
Udało mi się wyszukać i tanio kupić (za 3,68 zł) prostą i pasującą do tematyki domenę rowermiejski.waw.pl, gdzie wkrótce umieszczę pierwszą wersję tej aplikacji.

Krótki opis
Aplikacja będzie działa lokalnie w przeglądarce użytkownika (HTML+CSS+JavaSript), bez potrzeby posiłkowania się kodem po stronie serwera (typu PHP). Dane użytkownika, wybrane/ustawione przez niego, będą przechowywane w ciasteczkach (cookies). Dla wygody, aplikacja będzie obsługiwała kilka profili (związanych z daną lokalizacją), co uelastyczni korzystanie z niej. W profilu będzie zapamiętany język interfejsu użytkownika (na razie polski i angielski), położenie (lokalizacja GPS), jej nazwa (typu dom, praca, itp.) oraz wybrane do obserwowania okoliczne stacje VETURILO.
Wielojęzyczność aplikacji zostanie zrealizowana według mojego autorskiego rozwiązania przy użyciu w treści znaczników z konkretną klasą (class="translate") i kolejnymi identyfikatorami 'id' do statycznej tablicy z przetłumaczonymi tekstami. Dodatkowym utrudnieniem będzie konieczność dodania możliwości odmiany (w języku polskim) niektórych słów (np. metr: metry/metrów) w zależności od powiazanych z nimi wyświetlanych na ekranie wartości (pewnie do tego stworzę drugą, specjalną tablicę).

Powrót do strony z wykazem projektów

Valid HTML 4.01 TransitionalValid CSS