@@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). | |||||
## [Unreleased] | ## [Unreleased] | ||||
### Added | ### Added | ||||
- MRF: Support for priming the mediaproxy cache (`Pleroma.Web.ActivityPub.MRF.MediaProxyWarmingPolicy`) | - MRF: Support for priming the mediaproxy cache (`Pleroma.Web.ActivityPub.MRF.MediaProxyWarmingPolicy`) | ||||
- Mastodon API: Support for the [`tagged` filter](https://github.com/tootsuite/mastodon/pull/9755) in [`GET /api/v1/accounts/:id/statuses`](https://docs.joinmastodon.org/api/rest/accounts/#get-api-v1-accounts-id-statuses) | |||||
### Fixed | ### Fixed | ||||
- Not being able to pin unlisted posts | - Not being able to pin unlisted posts | ||||
@@ -356,6 +356,10 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIController do | |||||
def user_statuses(%{assigns: %{user: reading_user}} = conn, params) do | def user_statuses(%{assigns: %{user: reading_user}} = conn, params) do | ||||
with %User{} = user <- User.get_cached_by_id(params["id"]) do | with %User{} = user <- User.get_cached_by_id(params["id"]) do | ||||
params = | |||||
params | |||||
|> Map.put("tag", params["tagged"]) | |||||
activities = ActivityPub.fetch_user_activities(user, reading_user, params) | activities = ActivityPub.fetch_user_activities(user, reading_user, params) | ||||
conn | conn | ||||
@@ -1408,6 +1408,19 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIControllerTest do | |||||
assert [%{"id" => id}] = json_response(conn, 200) | assert [%{"id" => id}] = json_response(conn, 200) | ||||
assert id == to_string(post.id) | assert id == to_string(post.id) | ||||
end | end | ||||
test "filters user's statuses by a hashtag", %{conn: conn} do | |||||
user = insert(:user) | |||||
{:ok, post} = CommonAPI.post(user, %{"status" => "#hashtag"}) | |||||
{:ok, _post} = CommonAPI.post(user, %{"status" => "hashtag"}) | |||||
conn = | |||||
conn | |||||
|> get("/api/v1/accounts/#{user.id}/statuses", %{"tagged" => "hashtag"}) | |||||
assert [%{"id" => id}] = json_response(conn, 200) | |||||
assert id == to_string(post.id) | |||||
end | |||||
end | end | ||||
describe "user relationships" do | describe "user relationships" do | ||||