Update website
This commit is contained in:
parent
4413528994
commit
1d90fbf296
6865 changed files with 1091082 additions and 0 deletions
119
vendor/stevenmaguire/oauth2-bitbucket/src/Provider/Bitbucket.php
vendored
Normal file
119
vendor/stevenmaguire/oauth2-bitbucket/src/Provider/Bitbucket.php
vendored
Normal file
|
@ -0,0 +1,119 @@
|
|||
<?php namespace Stevenmaguire\OAuth2\Client\Provider;
|
||||
|
||||
use League\OAuth2\Client\Provider\AbstractProvider;
|
||||
use League\OAuth2\Client\Provider\Exception\IdentityProviderException;
|
||||
use League\OAuth2\Client\Token\AccessToken;
|
||||
use League\OAuth2\Client\Tool\ArrayAccessorTrait;
|
||||
use League\OAuth2\Client\Tool\BearerAuthorizationTrait;
|
||||
use Psr\Http\Message\ResponseInterface;
|
||||
|
||||
class Bitbucket extends AbstractProvider
|
||||
{
|
||||
use ArrayAccessorTrait,
|
||||
BearerAuthorizationTrait;
|
||||
|
||||
/**
|
||||
* Get authorization url to begin OAuth flow
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getBaseAuthorizationUrl()
|
||||
{
|
||||
return 'https://bitbucket.org/site/oauth2/authorize';
|
||||
}
|
||||
|
||||
/**
|
||||
* Get access token url to retrieve token
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getBaseAccessTokenUrl(array $params)
|
||||
{
|
||||
return 'https://bitbucket.org/site/oauth2/access_token';
|
||||
}
|
||||
|
||||
/**
|
||||
* Get provider url to fetch user details
|
||||
*
|
||||
* @param AccessToken $token
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getResourceOwnerDetailsUrl(AccessToken $token)
|
||||
{
|
||||
return 'https://api.bitbucket.org/2.0/user';
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the default scopes used by this provider.
|
||||
*
|
||||
* This should not be a complete list of all scopes, but the minimum
|
||||
* required for the provider user interface!
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
protected function getDefaultScopes()
|
||||
{
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the string that should be used to separate scopes when building
|
||||
* the URL for requesting an access token.
|
||||
*
|
||||
* @return string Scope separator, defaults to ' '
|
||||
*/
|
||||
protected function getScopeSeparator()
|
||||
{
|
||||
return ' ';
|
||||
}
|
||||
|
||||
/**
|
||||
* Check a provider response for errors.
|
||||
*
|
||||
* @throws IdentityProviderException
|
||||
* @param ResponseInterface $response
|
||||
* @param string $data Parsed response data
|
||||
* @return void
|
||||
*/
|
||||
protected function checkResponse(ResponseInterface $response, $data)
|
||||
{
|
||||
$errors = [
|
||||
'error_description',
|
||||
'error.message',
|
||||
];
|
||||
|
||||
array_map(function ($error) use ($response, $data) {
|
||||
if ($message = $this->getValueByKey($data, $error)) {
|
||||
throw new IdentityProviderException($message, $response->getStatusCode(), $response);
|
||||
}
|
||||
}, $errors);
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a user object from a successful user details request.
|
||||
*
|
||||
* @param object $response
|
||||
* @param AccessToken $token
|
||||
* @return League\OAuth2\Client\Provider\ResourceOwnerInterface
|
||||
*/
|
||||
protected function createResourceOwner(array $response, AccessToken $token)
|
||||
{
|
||||
return new BitbucketResourceOwner($response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a prepared request for requesting an access token.
|
||||
*
|
||||
* @param array $params Query string parameters
|
||||
* @return Psr\Http\Message\RequestInterface
|
||||
*/
|
||||
protected function getAccessTokenRequest(array $params)
|
||||
{
|
||||
$request = parent::getAccessTokenRequest($params);
|
||||
$uri = $request->getUri()
|
||||
->withUserInfo($this->clientId, $this->clientSecret);
|
||||
|
||||
return $request->withUri($uri);
|
||||
}
|
||||
}
|
73
vendor/stevenmaguire/oauth2-bitbucket/src/Provider/BitbucketResourceOwner.php
vendored
Normal file
73
vendor/stevenmaguire/oauth2-bitbucket/src/Provider/BitbucketResourceOwner.php
vendored
Normal file
|
@ -0,0 +1,73 @@
|
|||
<?php namespace Stevenmaguire\OAuth2\Client\Provider;
|
||||
|
||||
use League\OAuth2\Client\Provider\ResourceOwnerInterface;
|
||||
|
||||
class BitbucketResourceOwner implements ResourceOwnerInterface
|
||||
{
|
||||
/**
|
||||
* Raw response
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $response;
|
||||
|
||||
/**
|
||||
* Creates new resource owner.
|
||||
*
|
||||
* @param array $response
|
||||
*/
|
||||
public function __construct(array $response = array())
|
||||
{
|
||||
$this->response = $response;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get resource owner id
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public function getId()
|
||||
{
|
||||
return $this->response['uuid'] ?: null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get resource owner name
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public function getName()
|
||||
{
|
||||
return $this->response['display_name'] ?: null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get resource owner username
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public function getUsername()
|
||||
{
|
||||
return $this->response['username'] ?: null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get resource owner location
|
||||
*
|
||||
* @return string|null
|
||||
*/
|
||||
public function getLocation()
|
||||
{
|
||||
return $this->response['location'] ?: null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return all of the owner details available as an array.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function toArray()
|
||||
{
|
||||
return $this->response;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue