. * */ namespace Friendica\Module\Api\Mastodon; use Friendica\Core\System; use Friendica\DI; use Friendica\Model\Tag; use Friendica\Module\BaseApi; /** * @see https://docs.joinmastodon.org/methods/instance/trends/ */ class Trends extends BaseApi { /** * @throws \Friendica\Network\HTTPException\InternalServerErrorException */ protected function rawContent(array $request = []) { $request = self::getRequest([ 'limit' => 20, // Maximum number of results to return. Defaults to 10. ], $request); $trending = []; $tags = Tag::getGlobalTrendingHashtags(24, 20); foreach ($tags as $tag) { $tag['name'] = $tag['term']; $history = [['day' => (string)time(), 'uses' => (string)$tag['score'], 'accounts' => (string)$tag['authors']]]; $hashtag = new \Friendica\Object\Api\Mastodon\Tag(DI::baseUrl(), $tag, $history); $trending[] = $hashtag->toArray(); } System::jsonExit(array_slice($trending, 0, $request['limit'])); } }