Chciałbym wam zaprezentować nową klasę mojego autorstwa, EasyGravatar. Są to tak naprawde dwie klasy-wrappery do API Gravatara, jedna do pobierania avatarów, druga do pobierania danych użytkowna z jego publicznego profilu. Pobranie avataru ogranicza się do jego wyświetlenia i opcjonalnie ustawienia rozmiaru, maksymalnej oceny avatara itp. A profilu do jego wczytania.
( Mogę śmiało powiedzieć że to moja tak naprawdę pierwsza klasa oparta na Namespace'ach.

Wymagania:
- PHP 5.3+
- SPL
- allow_url_fopen włączone
Aby zainstalować EasyGravatar wklej pobrane pliki do twojego folderu includelub do include_path.
Użycie
Najprostsze pobranie avatara użytkownika:
- Dołączenie image.php do twojego pliku (include)
- Stworzenie obiektu Gravatar\Image
- Wyświetlenie avatara
W praktytce wyląda to tak:
# Krok 1 include 'path/to/EasyGravatar/Image.php'; # Krok 2 $img = new Gravatar\Image('jakisemail@example.com'); # Krok 3
Równie dobrze możesz stworzyć obiekt podając już zahaszowany e-mail. Jeśli chcesz otrzymać avatar w innej formie, jak np. w HTML-owym tagu <img> wystarczy że jako parametr do Gravatar\Image::getImage podasz typ. Tu jest ich lista:
- Gravatar\Image::HTML
- Gravatar\Image::BB
- Gravatar\Image::Markdown
- Gravatar\Image::Plain [domyślnie]
Opcje
Zmiana rozmiaru żądanego avataru, klasyfikacje i obrazek domyślny można zmienić za pomocą tych funkcji:
- Gravatar\Image::setSize($rozmiar) - zmiania rozmiar żadanego obrazka
- Gravatar\Image::setDefault($default) - zmienia obrazek domyślny (kiedy żądany nie istnieje)
- Gravatar\Image::setRating($ocena) - zmienia maksymalną ocene avatara
- Gravatar\Image::useSecure($bool) - zmiana użycia bezpiecznego połączenia
- Gravatar\Image::setForcedDefault($bool) - zmiana użycia avatara domyślnego, jeśli prawda obrazek domyślny zawsze będzie wczytany
Łańcuch
Możesz również łączyć powyższe metody w jeden łańcuch:
$img->setSize(50) ->setForcedDefault(true) ->setRating( Gravatar\Image::RATING_PG ) ->useSecure(true);
Więcej informacji, pełen tutorial( w łamanym angielskim ) oraz cały projekt można znaleźć na GitHubie. Komentarze, krytyka, pomysły na zmiene, ocena itd. mile widziane
Pozdrawiam Szadow.
