X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FNetwork%2FFKOAuthDataStore.php;h=44e14f2156b0cc6267ba5f307ffb094c3242260f;hb=d50a1edef468b9e3de456cb7c4570da5272b0cd8;hp=007908b99bc5b33c9cd135dcab11ac1a2418e876;hpb=2bbfc0640f411f99e37d82763ce57af5c0c18bd9;p=friendica.git diff --git a/src/Network/FKOAuthDataStore.php b/src/Network/FKOAuthDataStore.php index 007908b99b..44e14f2156 100644 --- a/src/Network/FKOAuthDataStore.php +++ b/src/Network/FKOAuthDataStore.php @@ -1,23 +1,25 @@ * */ + namespace Friendica\Network; -use Friendica\App; use Friendica\Core\Config; -use Friendica\Core\System; -use Friendica\Database\DBM; -use dba; +use Friendica\Core\Logger; +use Friendica\Database\DBA; +use OAuthConsumer; +use OAuthDataStore; +use OAuthToken; define('REQUEST_TOKEN_DURATION', 300); define('ACCESS_TOKEN_DURATION', 31536000); -require_once "library/OAuth1.php"; -require_once "library/oauth2-php/lib/OAuth2.inc"; +require_once 'include/dba.php'; /** * @brief OAuthDataStore class @@ -36,14 +38,14 @@ class FKOAuthDataStore extends OAuthDataStore * @param string $consumer_key key * @return mixed */ - public static function lookup_consumer($consumer_key) + public function lookup_consumer($consumer_key) { - logger(__function__.":".$consumer_key); - - $s = dba::select('clients', array('client_id', 'pw', 'redirect_uri'), array('client_id' => $consumer_key)); - $r = dba::inArray($r); + Logger::log(__function__ . ":" . $consumer_key); + + $s = DBA::select('clients', ['client_id', 'pw', 'redirect_uri'], ['client_id' => $consumer_key]); + $r = DBA::toArray($s); - if (DBM::is_result($r)) { + if (DBA::isResult($r)) { return new OAuthConsumer($r[0]['client_id'], $r[0]['pw'], $r[0]['redirect_uri']); } @@ -56,15 +58,15 @@ class FKOAuthDataStore extends OAuthDataStore * @param string $token token * @return mixed */ - public static function lookup_token($consumer, $token_type, $token) + public function lookup_token($consumer, $token_type, $token) { - logger(__function__.":".$consumer.", ". $token_type.", ".$token); - - $s = dba::select('tokens', array('id', 'secret', 'scope', 'expires', 'uid'), array('client_id' => $consumer->key, 'scope' => $token_type, 'id' => $token)); - $r = dba::inArray($s); + Logger::log(__function__ . ":" . $consumer . ", " . $token_type . ", " . $token); - if (DBM::is_result($r)) { - $ot=new OAuthToken($r[0]['id'], $r[0]['secret']); + $s = DBA::select('tokens', ['id', 'secret', 'scope', 'expires', 'uid'], ['client_id' => $consumer->key, 'scope' => $token_type, 'id' => $token]); + $r = DBA::toArray($s); + + if (DBA::isResult($r)) { + $ot = new OAuthToken($r[0]['id'], $r[0]['secret']); $ot->scope = $r[0]['scope']; $ot->expires = $r[0]['expires']; $ot->uid = $r[0]['uid']; @@ -81,13 +83,11 @@ class FKOAuthDataStore extends OAuthDataStore * @param string $timestamp timestamp * @return mixed */ - public static function lookup_nonce($consumer, $token, $nonce, $timestamp) + public function lookup_nonce($consumer, $token, $nonce, $timestamp) { - $s = dba::select('tokens', array('id', 'secret'), array('client_id' => $consumer->key, 'id' => $nonce, 'expires' => $timestamp)); - $r = dba::inArray($s); - - if (DBM::is_result($r)) { - return new OAuthToken($r[0]['id'], $r[0]['secret']); + $token = DBA::selectFirst('tokens', ['id', 'secret'], ['client_id' => $consumer->key, 'id' => $nonce, 'expires' => $timestamp]); + if (DBA::isResult($token)) { + return new OAuthToken($token['id'], $token['secret']); } return null; @@ -98,9 +98,9 @@ class FKOAuthDataStore extends OAuthDataStore * @param string $callback optional, default null * @return mixed */ - public static function new_request_token($consumer, $callback = null) + public function new_request_token($consumer, $callback = null) { - logger(__function__.":".$consumer.", ". $callback); + Logger::log(__function__ . ":" . $consumer . ", " . $callback); $key = self::genToken(); $sec = self::genToken(); @@ -110,14 +110,14 @@ class FKOAuthDataStore extends OAuthDataStore $k = $consumer; } - $r = dba::insert( + $r = DBA::insert( 'tokens', - array( + [ 'id' => $key, 'secret' => $sec, 'client_id' => $k, 'scope' => 'request', - 'expires' => UNIX_TIMESTAMP() + REQUEST_TOKEN_DURATION) + 'expires' => time() + REQUEST_TOKEN_DURATION] ); if (!$r) { @@ -133,9 +133,9 @@ class FKOAuthDataStore extends OAuthDataStore * @param string $verifier optional, defult null * @return object */ - public static function new_access_token($token, $consumer, $verifier = null) + public function new_access_token($token, $consumer, $verifier = null) { - logger(__function__.":".$token.", ". $consumer.", ". $verifier); + Logger::log(__function__ . ":" . $token . ", " . $consumer . ", " . $verifier); // return a new access token attached to this consumer // for the user associated with this token if the request token @@ -146,20 +146,20 @@ class FKOAuthDataStore extends OAuthDataStore // get user for this verifier $uverifier = Config::get("oauth", $verifier); - logger(__function__.":".$verifier.",".$uverifier); + Logger::log(__function__ . ":" . $verifier . "," . $uverifier); - if (is_null($verifier) || ($uverifier!==false)) { + if (is_null($verifier) || ($uverifier !== false)) { $key = self::genToken(); $sec = self::genToken(); - $r = dba::insert( + $r = DBA::insert( 'tokens', - array( + [ 'id' => $key, 'secret' => $sec, 'client_id' => $consumer->key, 'scope' => 'access', - 'expires' => UNIX_TIMESTAMP() + ACCESS_TOKEN_DURATION, - 'uid' => $uverifier) + 'expires' => time() + ACCESS_TOKEN_DURATION, + 'uid' => $uverifier] ); if ($r) { @@ -167,11 +167,9 @@ class FKOAuthDataStore extends OAuthDataStore } } + DBA::delete('tokens', ['id' => $token->key]); - dba::delete('tokens', array('id' => $token->key)); - - - if (!is_null($ret) && $uverifier !== false) { + if (!is_null($ret) && !is_null($uverifier)) { Config::delete("oauth", $verifier); }