diff options
author | Maxim Filippov <colixer@gmail.com> | 2019-10-07 15:41:41 +0300 |
---|---|---|
committer | Maxim Filippov <colixer@gmail.com> | 2019-10-07 15:41:41 +0300 |
commit | 35068baf65f1be9ac4e5ae8d08222244ae823fcc (patch) | |
tree | 0ed0b88fd100fb3df83400c147ab9a6a88d53c73 /lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex | |
parent | 7aceaa517be7b109a9acc15fb4914535b536b66c (diff) | |
parent | 0a99f1e8c5551dcf170722e5087a0401b2d907af (diff) | |
download | pleroma-35068baf65f1be9ac4e5ae8d08222244ae823fcc.tar.gz |
Merge branch 'develop' into feature/reports-groups-and-multiple-state-update
Diffstat (limited to 'lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex')
-rw-r--r-- | lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex | 15 |
1 files changed, 15 insertions, 0 deletions
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 d17ccf84d..9d50a7ca9 100644 --- a/lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex +++ b/lib/pleroma/web/pleroma_api/controllers/pleroma_api_controller.ex @@ -9,11 +9,26 @@ defmodule Pleroma.Web.PleromaAPI.PleromaAPIController do alias Pleroma.Conversation.Participation alias Pleroma.Notification + alias Pleroma.Plugs.OAuthScopesPlug alias Pleroma.Web.ActivityPub.ActivityPub alias Pleroma.Web.MastodonAPI.ConversationView alias Pleroma.Web.MastodonAPI.NotificationView alias Pleroma.Web.MastodonAPI.StatusView + plug( + OAuthScopesPlug, + %{scopes: ["read:statuses"]} when action in [:conversation, :conversation_statuses] + ) + + plug( + OAuthScopesPlug, + %{scopes: ["write:conversations"]} when action == :update_conversation + ) + + plug(OAuthScopesPlug, %{scopes: ["write:notifications"]} when action == :read_notification) + + plug(Pleroma.Plugs.EnsurePublicOrAuthenticatedPlug) + def conversation(%{assigns: %{user: user}} = conn, %{"id" => participation_id}) do with %Participation{} = participation <- Participation.get(participation_id), true <- user.id == participation.user_id do |