From f875b9650a8d1fc04ad029f5d894b5a417e1be90 Mon Sep 17 00:00:00 2001 From: Lain Soykaf Date: Fri, 7 Feb 2020 14:52:13 +0100 Subject: EmojiReactions: Add Mastodon-aligned reaction endpoints, change response --- lib/pleroma/web/mastodon_api/views/status_view.ex | 4 ++-- lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex | 4 ++-- lib/pleroma/web/router.ex | 3 +++ 3 files changed, 7 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/pleroma/web/mastodon_api/views/status_view.ex b/lib/pleroma/web/mastodon_api/views/status_view.ex index 6cb158bbf..e1e92034f 100644 --- a/lib/pleroma/web/mastodon_api/views/status_view.ex +++ b/lib/pleroma/web/mastodon_api/views/status_view.ex @@ -242,9 +242,9 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do with %{data: %{"reactions" => emoji_reactions}} <- object do Enum.map(emoji_reactions, fn [emoji, users] -> %{ - emoji: emoji, + name: emoji, count: length(users), - reacted: !!(opts[:for] && opts[:for].ap_id in users) + me: !!(opts[:for] && opts[:for].ap_id in users) } end) else diff --git a/lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex b/lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex index d76e39795..108e48438 100644 --- a/lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex +++ b/lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex @@ -53,10 +53,10 @@ defmodule Pleroma.Web.PleromaAPI.PleromaAPIController do |> Enum.filter(& &1) %{ - emoji: emoji, + name: emoji, count: length(users), accounts: AccountView.render("index.json", %{users: users, for: user, as: :user}), - reacted: !!(user && user.ap_id in user_ap_ids) + me: !!(user && user.ap_id in user_ap_ids) } end) diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex index e86bc3cc3..c16800927 100644 --- a/lib/pleroma/web/router.ex +++ b/lib/pleroma/web/router.ex @@ -272,6 +272,7 @@ defmodule Pleroma.Web.Router do pipe_through(:api) get("/statuses/:id/emoji_reactions_by", PleromaAPIController, :emoji_reactions_by) + get("/statuses/:id/reactions", PleromaAPIController, :emoji_reactions_by) end scope "/api/v1/pleroma", Pleroma.Web.PleromaAPI do @@ -289,6 +290,8 @@ defmodule Pleroma.Web.Router do patch("/conversations/:id", PleromaAPIController, :update_conversation) post("/statuses/:id/react_with_emoji", PleromaAPIController, :react_with_emoji) post("/statuses/:id/unreact_with_emoji", PleromaAPIController, :unreact_with_emoji) + put("/statuses/:id/reactions/:emoji", PleromaAPIController, :react_with_emoji) + delete("/statuses/:id/reactions/:emoji", PleromaAPIController, :unreact_with_emoji) post("/notifications/read", PleromaAPIController, :read_notification) patch("/accounts/update_avatar", AccountController, :update_avatar) -- cgit v1.2.3 From 4538a1ee0150a97303fb3e194f446c1aa2fa1a94 Mon Sep 17 00:00:00 2001 From: Lain Soykaf Date: Fri, 7 Feb 2020 15:01:45 +0100 Subject: EmojiReactions: Remove old API endpoints --- lib/pleroma/web/router.ex | 3 --- 1 file changed, 3 deletions(-) (limited to 'lib') diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex index c16800927..897215698 100644 --- a/lib/pleroma/web/router.ex +++ b/lib/pleroma/web/router.ex @@ -271,7 +271,6 @@ defmodule Pleroma.Web.Router do scope "/api/v1/pleroma", Pleroma.Web.PleromaAPI do pipe_through(:api) - get("/statuses/:id/emoji_reactions_by", PleromaAPIController, :emoji_reactions_by) get("/statuses/:id/reactions", PleromaAPIController, :emoji_reactions_by) end @@ -288,8 +287,6 @@ defmodule Pleroma.Web.Router do pipe_through(:authenticated_api) patch("/conversations/:id", PleromaAPIController, :update_conversation) - post("/statuses/:id/react_with_emoji", PleromaAPIController, :react_with_emoji) - post("/statuses/:id/unreact_with_emoji", PleromaAPIController, :unreact_with_emoji) put("/statuses/:id/reactions/:emoji", PleromaAPIController, :react_with_emoji) delete("/statuses/:id/reactions/:emoji", PleromaAPIController, :unreact_with_emoji) post("/notifications/read", PleromaAPIController, :read_notification) -- cgit v1.2.3