Skip to content

DATA-DOG/OAuthBundle

 
 

Repository files navigation

OAuth wrapper for Symfony 2

oauth-bundle is a symfony 2 wrapper bundle for Lusitanian/PHPoAuthLib which provides oAuth support in PHP 5.3+ and is very easy to integrate with any project which requires an oAuth client.

Build Status Latest Stable Version Total Downloads


Supported services

The library supports both oAuth 1.x and oAuth 2.0 compliant services. A list of currently implemented services can be found below. More services will be implemented soon.

Included service implementations:

  • OAuth1
    • BitBucket
    • Etsy
    • FitBit
    • Flickr
    • Scoop.it!
    • Tumblr
    • Twitter
    • Xing
    • Yahoo
  • OAuth2
    • Amazon
    • BitLy
    • Box
    • Dailymotion
    • Dropbox
    • Facebook
    • Foursquare
    • GitHub
    • Google
    • Harvest
    • Heroku
    • Instagram
    • LinkedIn
    • Mailchimp
    • Microsoft
    • PayPal
    • Pocket
    • Reddit
    • RunKeeper
    • SoundCloud
    • Vkontakte
    • Yammer
  • more to come!

To learn more about Lusitanian/PHPoAuthLib go here

Installation

Add oauth-bundle to your composer.json file:

"require": {
  "apinnecke/oauth-bundle": "~0.1"
}

Use composer to install this package.

$ composer update apinnecke/oauth-bundle

Registering the Bundle

Register the bundle in your app/AppKernel.php:

    new \APinnecke\Bundle\OAuthBundle\APinneckeOAuthBundle(),

Configuration

Now add required config to app/config/config.yml:

apinnecke_oauth:
    resource_owners:
        Xing:
            client_id: thisismyclientid
            client_secret: thisismyclientsecret

important:The resource owner name has to be in correct casing. Have a look on the available constants in ./ServiceFactory/ResourceOwners.php

Xing is used as an example here. Replace it with whatever your want. Now add all the resource owners you need, the services are created automatically.

Services

Services will be created automatically by this bundle. In my case, i want the xing service:

    $service = $this->container->get('apinnecke_oauth.service.xing');

or inject it into another service:

    fancy_company.random_namespace.wayne_bundle:
        class: FancyCompany\Bundle\WayneBundle\MyCool\ClassFor\WorldDominance
        arguments:
            - "@apinnecke_oauth.service.xing"

More usage examples:

For examples go here

About

Symfony 2 Wrapper for lusitanian/oauth.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%