2017 © Pedro Peláez
 

library hybridauth-service-provider

Silex HybridAuth Service Provider

image

junker/hybridauth-service-provider

Silex HybridAuth Service Provider

  • Wednesday, June 1, 2016
  • by Junker
  • Repository
  • 1 Watchers
  • 2 Stars
  • 4 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

HybridAuthServiceProvider

HybridAuth Service Provider for Silex, (*1)

Requirements

silex 1.x, (*2)

Installation

The best way to install HybridAuthServiceProvider is to use a Composer:, (*3)

php composer.phar require junker/hybridauth-service-provider

Examples

use Junker\Silex\Provider\HybridAuthServiceProvider;

$app->register(new HybridAuthServiceProvider(), [
    'hybridauth.config' => [
        'providers' => [ 
            'Facebook' => [
                'enabled' => true,
                'keys' => [ 
                    'id' => 1090817398,
                    'secret' => 'c9131f36717babbasdafewrfdase'
                ],
                'scope' => 'public_profile,email,user_birthday,user_location'
            ],
            'Twitter' => [
                'enabled' => true,
                'keys' => [
                    'key' => 'wwqKLOHNhequwhe',
                    'secret' => 'hiwedfrwe4trDKkVyIHiBdceN4Ed1ASDWdsfarewREFRtMk'
                ]
            ]
        ]
    ]
]);



$app->get('/login/{provider}', function($provider) use ($app) {

    $adapter = $app['hybridauth']->authenticate($provider);

    $user_profile = $adapter->getUserProfile();

    if ($user_profile)
    {
        $uid = $user_profile->identifier;
        $login = $app['db']->fetchColumn('SELECT login FROM user WHERE oauth_type=? AND oauth_uid=?', [$provider, $uid]);

        if ($login)
        {
            //force login. i.e.:
            $user_provider = new \MySite\UserProvider($app['db']);
            $user = $user_provider->loadUserByUsername($login);
            $token = new UsernamePasswordToken($user, NULL, 'main', $user->getRoles());
            $app['security']->setToken($token);

            return $app->redirect('/');
        }
        else
        {
            //redirect to registration
            ...
        }
    }
});

The Versions

01/06 2016

dev-master

9999999-dev

Silex HybridAuth Service Provider

  Sources   Download

MIT

The Requires

 

by Dmitry Kosenkov

oauth auth silex hybridauth hybrid auth