# Zend_Service_Flickr

## Wprowadzenie do przeszukiwania Flickr

`Zend_Service_Flickr` jest prostym API do użycia z serwisem Flickr REST Web Service. W celu użycia web serwisów Flickr, musisz posiadać klucz API. Aby zdoby klucz i uzyskać więcej informacji o Flickr REST Web Service, odwiedź dokumentację Flickr API.

W poniższym przykladzie, używamy metody `tagSearch()` do wyszukiwania zdjęć zawierających etykietę "php".

### Proste wyszukiwanie zdjęć Flickr

    $flickr = new Zend_Service_Flickr('MY_API_KEY');

    $results = $flickr->tagSearch("php");

    foreach ($results as $result) {
        echo $result->title . '<br />';
    }

### Opcjonalny parametr

Metoda `tagSearch()` akceptuje tablicę opcji jako opcjonalny drugi parametr.

## Wyszukiwanie zdjęć użytkowników Flickr i informacji o nich

Klasa `Zend_Service_Flickr` zapewnia kilka możliwości pobierania informacji o użytkownikach serwisu Flickr:

- `userSearch()`: akceptuje w parametrze treść zapytania w postaci etykiet oddzielonych spacją oraz tablicę opcji wyszukiwania jako opcjonalny drugi parametr, a zwraca zestaw zdjęć jako obiekt `Zend_Service_Flickr_ResultSet`.

- `getIdByUsername()`: Zwraca ID użytkownika powiązane z podaną nazwą użytkownika.

- `getIdByEmail()`:Zwraca ID użytkownika powiązane z podanym adresem email.

### Wyszukiwanie publicznych zdjęć użytkownika serwisu Flickr na podstawie adresu e-mail

W tym przykładzie, posiadamy adres e-mail użytkownika serwisu Flickr i szukamy publicznych zdjęć użytkownika używając metody `userSearch()`:

    $flickr = new Zend_Service_Flickr('MY_API_KEY');

    $results = $flickr->userSearch($userEmail);

    foreach ($results as $result) {
        echo $result->title . '<br />';
    }

## Wyszukiwanie zdjęć w Group Pool

Klasa `Zend_Service_Flickr` pozwala na pobieranie zdjęć grupy w oparciu o jej ID. Użyj metody `groupPoolGetPhotos()`:

### Pobieranie zdjęć z Group Pool na podstawie ID grupy:

    $flickr = new Zend_Service_Flickr('MY_API_KEY');

    $results = $flickr->groupPoolGetPhotos($groupId);

    foreach ($results as $result) {
        echo $result->title . '<br />';
    }

### Opcjonalny parametr

Metoda `groupPoolGetPhotos()` akceptuje opcjonalny drugi parametr będący tablicą opcji.

## Pobieranie szczegółów zdjęcia Flickr

`Zend_Service_Flickr` ułatwia pobieranie informacji o zdjęciu na podstawie podanego ID zdjęcia. Po prostu użyj metody `getImageDetails()`, tak jak w poniższym przykładzie:

### Pobieranie szczegółów zdjęcia Flickr

Jeśli posiadasz ID zdjęcia Flickr, pobranie informacji o zdjęciu jest bardzo proste:

    $flickr = new Zend_Service_Flickr('MY_API_KEY');

    $image = $flickr->getImageDetails($imageId);

    echo "Obrazek o ID $imageId ma rozmiar $image->width x $image->height pikseli.<br />\n";
    echo "<a href=\"$image->clickUri\">Click for Image</a>\n";

## Klasy wyników Zend_Service_Flickr

Poniższe klasy są zwracane przez metody `tagSearch()` oraz `userSearch()`:

- `Zend_Service_Flickr_ResultSet`

- `Zend_Service_Flickr_Result`

- `Zend_Service_Flickr_Image`

### Zend_Service_Flickr_ResultSet

Reprezentuje zestaw wyników wysuzkiwania Flickr.

Implementuje interfejs `SeekableIterator` dla łatwej iteracji (np., używając `foreach`), tak samo jak i dla bezpośredniego dostępu do specyficznego wyniku używając metody `seek()`.

#### Właściwości

##### Właściwości Zend_Service_Flickr_ResultSet

Nazwa | Typ | Opis
--- | --- | ---
totalResultsAvailable | int | Całkowita ilość dostępnych wyników wyszukiwania
totalResultsReturned | int | Całkowita ilość zwróconych wyników wyszukiwania
firstResultPosition | int | Pozycja obecnego zestawu wyników we wszystkich wynikach

#### Zend_Service_Flickr_ResultSet::totalResults()

int `totalResults`

Zwraca całkowitą ilość wyników w tym zestawie wyników wyszukiwania.

Powrót do listy klas

### Zend_Service_Flickr_Result

Pojedynczy wynik wyszukiwania zdjęcia w serwisie Flickr

#### Właściwości

##### Właściwości Zend_Service_Flickr_Result

Nazwa | Typ | Opis
--- | --- | ---
id | string | ID zdjęcia
owner | string | Identyfikator NSID właściciela zdjęcia.
secret | string | Klucz używany w konstrukcji URL.
server | string | Nazwa serwera używana w konstrukcji URL.
title | string | Tytuł zdjęcia.
ispublic | string | Czy zdjęcie jest publiczne.
isfriend | string | Czy zdjęcie jest dla Ciebie widoczne ponieważ jesteś przyjacielem właściciela.
isfamily | string | Czy zdjęcie jest dla Ciebie widoczne ponieważ jesteś rodziną właściciela.
license | string | Licencja pod jaką dostępne jest zdjęcie.
dateupload | string | Data wgrania zdjęcia.
datetaken | string | Data zrobienia zdjęcia.
ownername | string | Wyświetlana nazwa użytkownika.
iconserver | string | Serwer używany przy dołączaniu adresów URL ikon.
Square | Zend_Service_Flickr_Image | Miniaturka zdjęcia o wielkości 75x75.
Thumbnail | Zend_Service_Flickr_Image | Miniaturka zdjęcia o wielkości 100 pikseli.
Small | Zend_Service_Flickr_Image | Wersja zdjęcia o wielkości 240 pikseli.
Medium | Zend_Service_Flickr_Image | Wersja zdjęcia o wielkości 500 pikseli.
Large | Zend_Service_Flickr_Image | Wersja zdjęcia o wielkości 640 pikseli.
Original | Zend_Service_Flickr_Image | Oryginalne zdjęcie.

Powrót do listy klas

### Zend_Service_Flickr_Image

Reprezentuje zdjęcie zwrócone przez wyszukiwanie Flickr.

#### Właściwości

##### Właściwości Zend_Service_Flickr_Image

Nazwa | Typ | Opis
--- | --- | ---
uri | string | Adres URI oryginalnego zdjęcia
clickUri | string | Klikalny adres URI (np. strony Flickr) dla zdjęcia
width | int | Szerokość zdjęcia
height | int | Wysokość zdjęcia

Powrót do listy klas