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 2d 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 21% 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

3946d 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

[mageplaza/magento-2-social-login

Magento 2 Social Login extension is designed for quick login to your Magento 2 store without procesing complex register steps

1841.2M5](/packages/mageplaza-magento-2-social-login)[socalnick/scn-social-auth

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

21675.0k3](/packages/socalnick-scn-social-auth)[abydahana/aksara

Aksara is a CodeIgniter based CRUD Toolkit you can use to build complex applications become shorter, secure and more reliable just in a few lines of code. Serving both CMS or Framework, produce both HEADLESS (RESTful API) or TRADITIONAL (Browser Based), just by writing single controller. Yet it's reusable, scalable and ready to use!

1111.2k](/packages/abydahana-aksara)

PHPackages © 2026

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