From 20934d73b03850e4c282fa4fab9d070c35764b1b Mon Sep 17 00:00:00 2001 From: Philipp Date: Sat, 8 Jan 2022 21:53:19 +0100 Subject: [PATCH] Add missing Twitter API routes for IDs --- src/Module/Api/Twitter/Statuses/Retweet.php | 11 ++++++----- static/routes.config.php | 2 ++ 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/Module/Api/Twitter/Statuses/Retweet.php b/src/Module/Api/Twitter/Statuses/Retweet.php index 587defb06f..0c2401cf31 100644 --- a/src/Module/Api/Twitter/Statuses/Retweet.php +++ b/src/Module/Api/Twitter/Statuses/Retweet.php @@ -21,7 +21,6 @@ namespace Friendica\Module\Api\Twitter\Statuses; -use Friendica\Content\Text\BBCode; use Friendica\Core\Protocol; use Friendica\Database\DBA; use Friendica\DI; @@ -45,10 +44,12 @@ class Retweet extends BaseApi self::checkAllowedScope(self::SCOPE_WRITE); $uid = self::getCurrentUserID(); - $id = $request['id'] ?? 0; - - if (empty($id)) { - throw new BadRequestException('Item id not specified'); + if (!empty($this->parameters['id'])) { + $id = (int)$this->parameters['id']; + } elseif (!empty($request['id'])) { + $id = (int)$request['id']; + } else { + throw new BadRequestException('An id is missing.'); } $fields = ['uri-id', 'network', 'body', 'title', 'author-name', 'author-link', 'author-avatar', 'guid', 'created', 'plink']; diff --git a/static/routes.config.php b/static/routes.config.php index 37c3d54d04..63c968c6c7 100644 --- a/static/routes.config.php +++ b/static/routes.config.php @@ -120,6 +120,7 @@ $apiRoutes = [ '/statuses' => [ '/destroy[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Statuses\Destroy::class, [ R::POST]], + '/destroy/{id:\d+}[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Statuses\Destroy::class, [ R::POST]], '/followers[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Followers\Lists::class, [R::GET ]], '/friends[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Friends\Lists::class, [R::GET ]], '/friends_timeline[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Statuses\HomeTimeline::class, [R::GET ]], @@ -131,6 +132,7 @@ $apiRoutes = [ '/public_timeline[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Statuses\PublicTimeline::class, [R::GET ]], '/replies[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Statuses\Mentions::class, [R::GET ]], '/retweet[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Statuses\Retweet::class, [ R::POST]], + '/retweet/{id:\d+}[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Statuses\Retweet::class, [ R::POST]], '/show[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Statuses\Show::class, [R::GET ]], '/show/{id:\d+}[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Statuses\Show::class, [R::GET ]], '/update[.{extension:json|xml|rss|atom}]' => [Module\Api\Twitter\Statuses\Update::class, [ R::POST]],