Support OAuth for the legacy API

This commit is contained in:
Michael 2021-06-02 22:11:21 +00:00
parent 86d56c7f57
commit 9c59bcb6a5
2 changed files with 10 additions and 1 deletions

View file

@ -44,6 +44,7 @@ use Friendica\Model\Photo;
use Friendica\Model\Post; use Friendica\Model\Post;
use Friendica\Model\User; use Friendica\Model\User;
use Friendica\Model\Verb; use Friendica\Model\Verb;
use Friendica\Module\BaseApi;
use Friendica\Network\HTTPException; use Friendica\Network\HTTPException;
use Friendica\Network\HTTPException\BadRequestException; use Friendica\Network\HTTPException\BadRequestException;
use Friendica\Network\HTTPException\ExpectationFailedException; use Friendica\Network\HTTPException\ExpectationFailedException;
@ -88,6 +89,11 @@ $called_api = [];
*/ */
function api_user() function api_user()
{ {
$user = BaseApi::getCurrentUserID(true);
if (!empty($user)) {
return $user;
}
if (!empty($_SESSION['allow_api'])) { if (!empty($_SESSION['allow_api'])) {
return local_user(); return local_user();
} }

View file

@ -238,7 +238,7 @@ class BaseApi extends BaseModule
* *
* @return int User ID * @return int User ID
*/ */
protected static function getCurrentUserID() public static function getCurrentUserID(bool $nologin = false)
{ {
if (empty(self::$current_user_id)) { if (empty(self::$current_user_id)) {
self::$current_token = self::getTokenByBearer(); self::$current_token = self::getTokenByBearer();
@ -247,7 +247,10 @@ class BaseApi extends BaseModule
} else { } else {
self::$current_user_id = 0; self::$current_user_id = 0;
} }
}
if ($nologin) {
return (int)self::$current_user_id;
} }
if (empty(self::$current_user_id)) { if (empty(self::$current_user_id)) {