mirror of
https://github.com/1sept/oauth2-1sept.git
synced 2024-05-30 17:38:52 +03:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ddf2d1b6e4 | |||
| eb43f28d61 |
@@ -28,18 +28,38 @@ class SeptemberFirstProvider extends GenericProvider
|
|||||||
const API_BASE = 'https://api.1sept.ru';
|
const API_BASE = 'https://api.1sept.ru';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @var string Версия API
|
* @var array Разрешения (scopes) по умолчанию
|
||||||
*/
|
*/
|
||||||
const API_VERSION = '2.0';
|
const SCOPES_DEFAULT = ['profile'];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string Разделитель перечня запрашиваемых разрешений
|
||||||
|
*/
|
||||||
|
const SCOPES_SEPARATOR = ' ';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string Путь авторизации
|
||||||
|
*/
|
||||||
|
const AUTHORIZE_PATH = '/oauth/authorize';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string Путь получения токена
|
||||||
|
*/
|
||||||
|
const ACCESS_TOKEN_PATH = '/oauth/access_token';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var string Путь получения данных пользователя
|
||||||
|
*/
|
||||||
|
const USERINFO_PATH = '/2.0/userinfo';
|
||||||
|
|
||||||
public function __construct(array $options = [], array $collaborators = [])
|
public function __construct(array $options = [], array $collaborators = [])
|
||||||
{
|
{
|
||||||
$defaultOptions = [
|
$defaultOptions = [
|
||||||
'urlAuthorize' => static::AUTH_BASE.'/oauth/authorize',
|
'urlAuthorize' => static::AUTH_BASE.static::AUTHORIZE_PATH,
|
||||||
'urlAccessToken' => static::API_BASE.'/oauth/access_token',
|
'urlAccessToken' => static::API_BASE.static::ACCESS_TOKEN_PATH,
|
||||||
'urlResourceOwnerDetails' => static::API_BASE.'/'.static::API_VERSION.'/userinfo',
|
'urlResourceOwnerDetails' => static::API_BASE.static::USERINFO_PATH,
|
||||||
'scopes' => ['profile'],
|
'scopes' => static::SCOPES_DEFAULT,
|
||||||
'scopeSeparator' => ' ',
|
'scopeSeparator' => static::SCOPES_SEPARATOR,
|
||||||
];
|
];
|
||||||
|
|
||||||
parent::__construct(array_merge($defaultOptions, $options), $collaborators);
|
parent::__construct(array_merge($defaultOptions, $options), $collaborators);
|
||||||
@@ -50,8 +70,8 @@ class SeptemberFirstProvider extends GenericProvider
|
|||||||
*/
|
*/
|
||||||
protected function checkResponse(ResponseInterface $response, $data): void
|
protected function checkResponse(ResponseInterface $response, $data): void
|
||||||
{
|
{
|
||||||
if (!empty($data['error'])) {
|
if (! empty($data['error'])) {
|
||||||
throw new IdentityProviderException($data['error'].': '.$data['message'], null, $response);
|
throw new IdentityProviderException($data['error'].': '.$data['message'], 0, $response);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -158,14 +158,13 @@ class SeptemberFirstUser implements ResourceOwnerInterface
|
|||||||
/**
|
/**
|
||||||
* URL аватарки (150x150)
|
* URL аватарки (150x150)
|
||||||
*
|
*
|
||||||
* @param bool $addVersion Использовать версию аватарки для улучшенного кэширования
|
|
||||||
* @return string|null
|
* @return string|null
|
||||||
*
|
*
|
||||||
* @example https://avatar.1sept.ru/12121212-3456-7243-2134-432432144221.jpeg?v=12345
|
* @example https://avatar.1sept.ru/12121212-3456-7243-2134-432432144221.jpeg?v=12345
|
||||||
*/
|
*/
|
||||||
public function getAvatarUrl(bool $addVersion = true): ?string
|
public function getAvatarUrl(): ?string
|
||||||
{
|
{
|
||||||
return $this->getField('avatar') . ($addVersion ? $this->getAvatarVersionQuery() : '');
|
return $this->getField('avatar');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user