PHPackages                             ondrakoupil/hybridauth-skautis - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. ondrakoupil/hybridauth-skautis

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

ondrakoupil/hybridauth-skautis
==============================

Plugin pro HybridAuth umožňující jednoduché přihlašování přes SkautIS.

v0.1(10y ago)16MITPHPPHP &gt;=5.3.1

Since Sep 14Pushed 10y agoCompare

[ Source](https://github.com/ondrakoupil/hybridauth-skautis)[ Packagist](https://packagist.org/packages/ondrakoupil/hybridauth-skautis)[ RSS](/packages/ondrakoupil-hybridauth-skautis/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (3)Versions (2)Used By (0)

Jednoduché přihlašování přes SkautIS pomocí HybridAuth
======================================================

[](#jednoduché-přihlašování-přes-skautis-pomocí-hybridauth)

HybridAuth je PHP knihovna pro univerzální přihlašování přes různé veřejné služby a sociální sítě, např. Facebook či Google. S pomocí tohoto rozšíření lze do vaší aplikace přidat i přihlašování přes SkautIS.

Instalace
---------

[](#instalace)

Pokud ve své aplikaci používáte Composer, nainstalujete jednoduše:

`composer require ondrakoupil/hybridauth-skautis`

Pokud nepoužíváte Composer, je třeba si zkopírovat soubory z adresáře `src` a libovolným způsobem je všechny includovat. Samotný HybridAuth lze stáhnout z [jeho webu](http://hybridauth.sourceforge.net/).

Použití
-------

[](#použití)

Přihlášení přes SkautIS probíhá až na několik odlišností stejně jako přes Google či Facebook. Pokud s HybridAuth nemáte zkušenosti, prostudujte si [jejich dokumentaci](http://hybridauth.sourceforge.net/userguide.html), kde je vše dopodrobna popsané.

Anebo si přečtěte [stručný návod pro začátky s HybridAuthem](./hybridauth.readme.md), který vás namíří správným směrem.

Také budete potřebovat svoji aplikaci zaregistrovat do SkautISu a získat její AppID.

Nastavení
---------

[](#nastavení)

V konfiguraci HybridAuth přidáte nový provider jménem SkautIS. Konfigurace může vypadat zhruba takto:

```
$config = array(
	"base_url" => "... URL vašeho endpointu ...",
	"providers" => array (
		"SkautIS" => array(
			"enabled" => true,
			"test" => true,
			"wrapper" => array(
				"class" => "\\HybridAuth\\SkautIS\\Adapter"
			),
			"keys" => array(
				"appId" => "... vaše APP ID ..."
			),
			"data" => array(
				"contacts" => true,
				"photo" => true,
				"roles" => true,
				"unit" => true,
				"roleUnitDetails" => false
			),
			"photoProxy" => "",
			"photoSize" => "medium"
		),
		"Google" => "...",
		"Facebook" => "...",
		"Twitter" => "..."
	)
);
```

Nyní blíže k jednotlivým položkám:

- **test** = true nebo false podle toho, zda chcete používat testovací SkautIS anebo ostrý. Výchozí hodnota je true (tj. testovací). Po přechodu na ostrý nezapomeňte změnit i AppID.
- **wrapper** = zde je nutno zadat jméno třídy včetně namespaců (tj. `\HybridAuth\SkautIS\Adapter`), pokud si soubor s třídou `Adapter` nenakopírujete mezi ostatní adaptéry do adresáře se zdrojáky HybridAuthu.
- **keys** = array s jedinou položkou `appId`. Nezapomeňte, že se liší pro testovací a ostrý SkautIS.
- **data** = nepovinné array umožňující upřesnit, co všecno ze SkautISu potřebujete vytáhnout a případně tak zrychlit přihlášení tím, že zakážete nepotřebné údaje. Ve výchozím nastavení zapnuté vše kromě `roleUnitDetails`
    - `contacts` = další kontakty jako telefon či web (kromě e-mailu, ten je vždy součást základních dat)
    - `photo` = profilová fotka uživatele
    - `roles` = seznam všech rolí uživatele
    - `unit` = podrobnosti o jednotce (oddílu, středisku...), ve kterém je uživatel registrován
    - `roleUnitDetails` = podrobnosti o všech jednotkách, ve kterých má uživatel nějakou roli
- **photoProxy** = nepovinné, viz níže
- **photoSize** = nepovinná požadovaná velikost fotky: small, medium, normal, big

Rozdíly oproti standardnímu přihlášení přes HybridAuth
------------------------------------------------------

[](#rozdíly-oproti-standardnímu-přihlášení-přes-hybridauth)

Jelikož SkautIS je dost specifický a pravděpodobně z něj budete chtít i nějaká jiná data, než HybridAuth vydoluje z klasických sociálních sítí, tak volání `$adapter->getUserProfile()` nevrací standardní `Hybrid_User_Profile`, ale jeho odděděnou rozšířenou verzi, objekt třídy `\HybridAuth\SkautIS\UserProfile`. Ten obsahuje jak to, co základní profil, tak i nějaké další údaje navíc specifické pro SkautIS týkající se zejména rolí a jednotek v Junáku. Je na vás, jak si s nimi pak ve své aplikaci poradíte.

Prohlédněte si třídy [UserProfile](./src/UserProfile.php), [Role](./src/Role.php) a [Unit](./src/Unit.php), z nichž jistě vše pochopíte podrobněji.

Fotky
-----

[](#fotky)

HybridAuth předpokládá, že poskytovatel přihlášení nabízí ke stažení uživatelův portrét jako na nějaký URL, který lze získat přes `UserProfile -> $photoURL`. SkautIS ale posílá přímo binární obsah obrázku. Ten je sice dostupný v `UserProfile -> $photoData`, ale abychom zachovali kompatibilitu s ostatními poskytovateli, lze nastavit v konfiguraci položku `photoProxy`, která práci s obrázky sjednotí. Zvolte si takový přístup, který bude lépe vyhovovat dalšímu zpracování obrázků po přihlášení.

`photoProxy` může být buď obyčejný string, který představuje cestu k nějakému adresáři. Po přihlášení se v tomto adresáři vytvoří soubor s obrázkem a $photoURL se nastaví na cestu k němu. Tato cesta bude dostupná jen lokálně. Po jeho zpracování byste pak tento soubor zase měli smazat.

Druhou možností je zadat array se dvěma položkami, `dir` a `url`. `dir` je stejně jako v předchozím případě cesta k adresáři pro uložení souboru a `url` je jeho veřejná URL adresa, přes níž je možné se na soubory v adresáři dostat přes internet. $photoURL se pak nastaví na veřejný URL vzniklého souboru.

```
"photoProxy" => "../some/temp/directory"

"photoProxy" => array(
	"dir" => "../www/portraits",
	"url" => "http://www.moje-aplikace.cz/portraits"
)

```

Ladění chyb
-----------

[](#ladění-chyb)

Pokud něco nefunguje, lze zapnout standardní debug režim v HybridAuth. Stačí do konfigurace přidat:

```
"debug_mode" => true,
"debug_file" => "cesta_k_souboru/kam_se_bude/logovat.txt"

```

Do tohoto logu se pak kromě ostatních informací o průběhu zpracování bude zapisovat i komunikace se SkautISem, každá volaná metoda a návratová hodnota.

Pomoc, podpora, hlášení chyb atd.
---------------------------------

[](#pomoc-podpora-hlášení-chyb-atd)

Pokud jste narazili na jakoukoliv potíž nebo vám něco není jasné, přidejte issue zde na GitHubu, anebo [mi napište přímo](https://github.com/ondrakoupil/). Pokusím se poradit, bude-li to v mých silách :-)

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

3894d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1243051?v=4)[Ondřej Koupil](/maintainers/ondrakoupil)[@ondrakoupil](https://github.com/ondrakoupil)

---

Top Contributors

[![ondrakoupil](https://avatars.githubusercontent.com/u/1243051?v=4)](https://github.com/ondrakoupil "ondrakoupil (9 commits)")

### Embed Badge

![Health badge](/badges/ondrakoupil-hybridauth-skautis/health.svg)

```
[![Health](https://phpackages.com/badges/ondrakoupil-hybridauth-skautis/health.svg)](https://phpackages.com/packages/ondrakoupil-hybridauth-skautis)
```

###  Alternatives

[socalnick/scn-social-auth

Uses the HybridAuth PHP library to Enable authentication via Google, Facebook, Twitter, Yahoo!, etc for the ZfcUser ZF2 module.

21974.2k3](/packages/socalnick-scn-social-auth)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
