X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModule%2FApi%2FMastodon%2FMutes.php;h=6557b770b8470e87c10e1d309d522398ed445b35;hb=7486ebdc10715b7204b70ce262052d28cb61c69e;hp=b5ec30de4da67cc4ea5436db583b97c51bc2ffd6;hpb=6511493fdf212448aebf5291e7998616d67e87ca;p=friendica.git diff --git a/src/Module/Api/Mastodon/Mutes.php b/src/Module/Api/Mastodon/Mutes.php index b5ec30de4d..6557b770b8 100644 --- a/src/Module/Api/Mastodon/Mutes.php +++ b/src/Module/Api/Mastodon/Mutes.php @@ -1,6 +1,6 @@ checkAllowedScope(self::SCOPE_READ); $uid = self::getCurrentUserID(); - if (empty($parameters['id'])) { - DI::mstdnError()->RecordNotFound(); + if (empty($this->parameters['id'])) { + $this->logErrorAndJsonExit(422, $this->errorFactory->UnprocessableEntity()); } - $id = $parameters['id']; + $id = $this->parameters['id']; if (!DBA::exists('contact', ['id' => $id, 'uid' => 0])) { - DI::mstdnError()->RecordNotFound(); + $this->logErrorAndJsonExit(404, $this->errorFactory->RecordNotFound()); } - // Return results older than this id - $max_id = (int)!isset($_REQUEST['max_id']) ? 0 : $_REQUEST['max_id']; - // Return results newer than this id - $since_id = (int)!isset($_REQUEST['since_id']) ? 0 : $_REQUEST['since_id']; - // Maximum number of results. Defaults to 40. - $limit = (int)!isset($_REQUEST['limit']) ? 40 : $_REQUEST['limit']; + $request = $this->getRequest([ + 'max_id' => 0, // Return results older than this id + 'since_id' => 0, // Return results newer than this id + 'min_id' => 0, // Return results immediately newer than id + 'limit' => 40, // Maximum number of results. Defaults to 40. + ], $request); - $params = ['order' => ['cid' => true], 'limit' => $limit]; + $params = ['order' => ['cid' => true], 'limit' => $request['limit']]; $condition = ['cid' => $id, 'ignored' => true, 'uid' => $uid]; - if (!empty($max_id)) { - $condition = DBA::mergeConditions($condition, ["`cid` < ?", $max_id]); + if (!empty($request['max_id'])) { + $condition = DBA::mergeConditions($condition, ["`cid` < ?", $request['max_id']]); } - if (!empty($since_id)) { - $condition = DBA::mergeConditions($condition, ["`cid` > ?", $since_id]); + if (!empty($request['since_id'])) { + $condition = DBA::mergeConditions($condition, ["`cid` > ?", $request['since_id']]); } - if (!empty($min_id)) { - $condition = DBA::mergeConditions($condition, ["`cid` > ?", $min_id]); + if (!empty($request['min_id'])) { + $condition = DBA::mergeConditions($condition, ["`cid` > ?", $request['min_id']]); $params['order'] = ['cid']; } - $followers = DBA::select('user-contact', ['cid'], $condition, $parameters); + $followers = DBA::select('user-contact', ['cid'], $condition, $params); while ($follower = DBA::fetch($followers)) { + self::setBoundaries($follower['cid']); $accounts[] = DI::mstdnAccount()->createFromContactId($follower['cid'], $uid); } DBA::close($followers); - System::jsonExit($accounts); + if (!empty($request['min_id'])) { + $accounts = array_reverse($accounts); + } + + self::setLinkHeader(); + $this->jsonExit($accounts); } }