Enabled OAuth/OAuth2 logins
This commit is contained in:
67
modules/oauth/classes/Kohana/OAuth2/Request.php
Normal file
67
modules/oauth/classes/Kohana/OAuth2/Request.php
Normal file
@@ -0,0 +1,67 @@
|
||||
<?php defined('SYSPATH') OR die('No direct access allowed.');
|
||||
/**
|
||||
* OAuth v2 Request
|
||||
*
|
||||
* @package Kohana/OAuth2
|
||||
* @category Request
|
||||
* @author Kohana Team
|
||||
* @copyright (c) 2010 Kohana Team
|
||||
* @license http://kohanaframework.org/license
|
||||
* @author Deon George
|
||||
* @copyright (c) 2009-2013 Deon George
|
||||
* @license http://dev.leenooks.net/license.html
|
||||
* @since 3.0.7
|
||||
*/
|
||||
abstract class Kohana_OAuth2_Request extends OAuth_Request {
|
||||
|
||||
/**
|
||||
* @static
|
||||
* @param string $type
|
||||
* @param string $method
|
||||
* @param string $url
|
||||
* @param array $params
|
||||
* @return OAuth2_Request
|
||||
*/
|
||||
public static function factory($type, $method, $url = NULL, array $params = NULL)
|
||||
{
|
||||
$class = 'OAuth2_Request_'.ucfirst($type);
|
||||
|
||||
return new $class($method, $url, $params);
|
||||
}
|
||||
|
||||
/**
|
||||
* @var boolean send Authorization header?
|
||||
*/
|
||||
public $send_header = TRUE;
|
||||
|
||||
protected $auth_params = '/^access_token$/';
|
||||
|
||||
/**
|
||||
* Convert the request parameters into an `Authorization` header.
|
||||
*
|
||||
* $header = $request->as_header();
|
||||
*
|
||||
* [!!] This method implements [OAuth 2.0 v22 Spec 7.1](http://tools.ietf.org/html/draft-ietf-oauth-v2-22#section-7.1).
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function as_header()
|
||||
{
|
||||
if ($access = Arr::get($this->params, 'access_token'))
|
||||
{
|
||||
if (is_string($this->send_header))
|
||||
{
|
||||
$header = $this->send_header;
|
||||
}
|
||||
else
|
||||
{
|
||||
$header = 'Bearer';
|
||||
}
|
||||
|
||||
$access = $header.' '.$access;
|
||||
}
|
||||
|
||||
return $access ? $access : NULL;
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user