|> Map.put("actor_id", ap_id)
|> Map.put("whole_db", true)
- if params["pinned"] == "true" do
- # Since Pleroma has no "pinned" posts feature, we'll just set an empty list here
- activities = []
- else
- activities =
+ activities =
+ if params["pinned"] == "true" do
+ # Since Pleroma has no "pinned" posts feature, we'll just set an empty list here
+ []
+ else
ActivityPub.fetch_public_activities(params)
|> Enum.reverse()
- end
+ end
conn
|> add_link_headers(:user_statuses, activities, params["id"])
end
end
+ def unreblog_status(%{assigns: %{user: user}} = conn, %{"id" => ap_id_or_id}) do
+ with {:ok, _, _, %{data: %{"id" => id}}} = CommonAPI.unrepeat(ap_id_or_id, user),
+ %Activity{} = activity <- Activity.get_create_activity_by_object_ap_id(id) do
+ render(conn, StatusView, "status.json", %{activity: activity, for: user, as: :activity})
+ end
+ end
+
def fav_status(%{assigns: %{user: user}} = conn, %{"id" => ap_id_or_id}) do
with {:ok, _fav, %{data: %{"id" => id}}} = CommonAPI.favorite(ap_id_or_id, user),
%Activity{} = activity <- Activity.get_create_activity_by_object_ap_id(id) do