Download the PHP package pionyr/pionyr-cz-client without Composer

On this page you can find all versions of the php package pionyr/pionyr-cz-client. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package pionyr-cz-client

PHP API klient pro Pionyr.cz

Latest Stable Version Coverage Status GitHub Actions Build Status

Pro využití například na webech krajských organizací poskytuje web pionyr.cz API, skrze které se dají načítat články, akce, termíny a seznamy jednotek (pionýrských skupin, oddílů, klubů).

Tato knihovna poskytuje nástroje pro snadnou práci s tímto API. Knihovna vyžaduje PHP verze 7.3 a novější.

Instalace

Instalace knihovny se provede skrze Composer. Instalaci je možno spustit tímto příkazem:

Čímž se nainstaluje API klient, který bude používat jako transportní HTTP knihovnu Guzzle 7.

Knihovna používá pro HTTP abstrakci za využití specifikací PSR-7, PSR-17 a PSR-18. Není tak svázána s konkrétní HTTP knihovnou. Díky tomu je dle potřeby možné použít i jinou HTTP knihovnu (např. takovou, kterou již využívá PHP framework, ve kterém máme aplikaci, např. symfony/http-client). Viz seznam podporovaných HTTP knihoven.

Pokud bychom chtěli použít jako transportní knihovnu místo Guzzle 7 například cURL, nainstalujeme API klienta tímto příkazem:

Použití

Pro použití potřebujeme znát API token, který přidělí Ústředí Pionýra. Tokenem je zároveň identifikován uživatel a je tím stanoven i rozsah přístupů (např. tokenem vystaveným pro jeden kraj nemůžeme přistupovat k seznamu akcí jiného kraje apod.).

Token se také váže na doménu (instanci) API - v případě použití testovací instance API je třeba rovněž použít token, vystavený právě pro tuto instanci (token pro "produkční" instanci zde nebude fungovat).

Na začátku práce s API je třeba nejprve vytvořit instanci objektu PionyrCz a předat mu API token:

Pokud chceme pracovat s jinou instancí API než "produkční" na pionyr.cz, můžeme nastavit tzv. base URL API:

V dalších ukázkách se pracuje s tímto objektem $pionyrCz.

Cachování odpovědí

Odpovědi z API je vhodné cachovat. Ukázku nastavení cachování pomocí PSR-6 je možné najít v souboru examples/caching.php.

Články

Načtení seznamu článků

Vracejí se pouze publikované články odpovídající právům daného tokenu, které se mají momentálně zobrazovat.

Seznam je stránkovaný po 30 položkách na stránku a je možné jej filtrovat dle kategorie článku.

Načtení detailu jednoho článku

Detail článku obsahuje stejné položky, jako jeden článek v seznamu, a k tomu je doplněn o další údaje.

Akce

Načtení seznamu akcí

Vracejí se pouze akce odpovídající právům daného tokenu.

Seznam je stránkovaný po 30 položkách na stránku a je možné jej filtrovat dle kategorie akce a dle termínu akce (jako výchozí se načítají akce, mající datum začátku dnes nebo v budoucnu).

Načtení detailu jedné akce

Detail akce obsahuje stejné položky, jako jedna akce v seznamu, a k tomu je doplněn o další údaje.

Jednotky

Pionýrské skupiny

Vracejí se pouze skupiny odpovídající právům daného tokenu (podjednotky kraje).

Seznam je stránkovaný po 50 položkách na stránku.

Oddíly

Zatím neimplementováno.

Kluby

Zatím neimplementováno.

Výjimky a zpracování chyb

Výjimky, ke kterým dojde v API klientovi při zpracování požadavků/odpovědí, implementují rozhraní Pionyr\PionyrCz\Exception\PionyrCzExceptionInterface.

Strom výjimek:

Výjimka Thrown when
PionyrCzExceptionInterface Společné rozhraní pro všechny výjimky API klienta
└ ClientErrorException Chyba při odeslání požadavku - chybná data apod.
  └ AuthorizationException Neautentizovaný požadavek, chybný API token
└ ServerErrorException Chyba při odpovědi serveru - výpadek služby apod.
└ ResponseDecodingException Odpověd obsahuje chybná data

V případě použití vlastní instance HTTP klienta (tedy pokud voláme $pionyrCz->setHttpClient()) je třeba zajistit, aby byl nastaven tak, že v případě HTTP chyb (400 a 500) nevyhazuje sám výjimky. Například při použití Guzzle 6 klienta to znamená že nastavení http_errors musí být false.

Changelog - seznam změn

Pro seznam změn viz soubor sémantické verzování.

Licence

Knihovna je zveřejněna jako open-source pod licencí MIT.


All versions of pionyr-cz-client with dependencies

PHP Build Version
Package Version
Requires php Version ^7.3 || ^8.0
ext-json Version *
ext-mbstring Version *
beberlei/assert Version ^3.0
fig/http-message-util Version ^1.1
myclabs/php-enum Version ^1.6
pascaldevink/shortuuid Version ^3.0
php-http/client-common Version ^2.3
php-http/discovery Version ^1.4
php-http/httplug Version ^2.2
php-http/message Version ^1.11
php-http/message-factory Version ^1.0
php-http/promise Version ^1.1
psr/http-message Version ^1.0
ramsey/uuid Version ^4.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package pionyr/pionyr-cz-client contains the following files

Loading the files please wait ....