Kilka słów na początek
Wersja dla Drupala 7.x będzie wkrótce, jak tylko światło dzienne ujrzy wersja stabilna 6.x (w tej chwili beta2).
Tłumaczenie dla języka polskiego dostępne wkrótce.
Moduł AccuWeather pozwala na wyświetlanie pogody udostępnianej przez serwis AccuWeather.com. Aktualnie (i w zasadzie docelowo) pogodę można wyświetlać na trzy sposoby:
-
pełna strona wraz z formularzem wyszukiwania lokalizacji (szczegółowe dane pogodowe oraz prognozowane),
-
jako block dla wszystkich użytkowników,
-
jako block dla użytkowników zarejestrowanych, z możliwością wyświetlania pogody w lokalizacji użytkownika, jeżeli w swoim profilu podał miejscowość (dostępne wyłącznie w przypadku użycia modułu "Profile" lub "Content Profile" dla profili userów)
Mała uwaga: jeżeli miejscowość użytkownika występuje pod taką samą nazwą w wielu miejscach, użytkownikowi zostanie wyświetlona lista możliwości, a po wybraniu swojej lokalizacji zostanie mu wyświetlona pogoda dla wybranej lokacji.
Niestety, AccuWeather udostępnia dane wyłącznie w wersji angielskiej, także wszystkie opisy pogody w prognozie wymagają tłumaczenia ręcznego.
Funkcje
-
łatwa możliwość przeróbki templatki (pliki *tpl.php dla bloków oraz pełnej strony),
-
odświeżanie danych pogodowych co 15 minut, przy uruchomieniu CRON'a lub przy wizycie użytkownika, jeżeli cache jest starszy niż 15 minut (świetnie sprawdza się zastosowanie modułu AJAXBlocks dla bloku pogody w przypadku stron cache-owanych dla użytkowników anonimowych),
-
predefiniowany arkusz CSS z możliwością jego wyłączenia (konfig w panelu admina), aby zrobić własne ostylowanie,
-
wyświeltanie pogody w blokach na bazie lokalizacji użytkownika (konfiguracja na podstawie wybranego pola z profilu użytkownika uzyskanego za pomocą modułu "Profile" lub "Content Profile"),
-
zapisywanie ostatnio wyświetlanej lokalizacji w ciasteczkach przeglądarki,
-
jednostki metryczne lub angielskie,
-
konfiguracja ilości wyświetlanych dni w prognozie (maksymalnie 8 - tyle oferuje AccuWeather)
-
fajne ikonki;)
Konfiguracja
Formularz ustawień jest dostępny w Konfiguracji witryny › AccuWeather settings.
Bloki dostępne standardowo na stronie zarządzania blokami.
Wymagania
Dla developerów
Moduł posiada własny hook do operowania na wynikach zwracanych przez AccuWeather. Przykładowym użyciem może być zawężenie listy lokalizacji do określonego kraju na podstawie kodu kontynentu oraz kodu kraju (krótsza wersja ISO):
/**
* Implementation of hook_accuweather_locations().
*/
function MYMODULE_accuweather_locations($op = 'list', &$data = array()) {
foreach ($data['locations'] as $index => $location) {
if (substr($location, 0, 6) == 'EUR|PL') {
$continue = TRUE;
}
}
if ($continue) {
foreach ($data['locations'] as $index => $location) {
$data['items'][$index] = str_replace('(', ' (', $data['items'][$index]);
if (substr($location, 0, 6) != 'EUR|PL') {
unset($data['locations'][$index], $data['items'][$index]);
}
}
}
return $data;
}
Prawdopodobnie w kolejnej wersji modułu powyższa metoda zostanie zaimplementowana jako element formularza ustawień AccuWeather.
Download
http://drupal.org/project/accuweather
Demo
http://www.bukaciarnia.pl/pogoda
http://www.milikowice.pl/pogoda
Komentarze
Ten wpis nie posiada jeszcze komentarzy
Dodaj komentarz