aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/web/twitter_api
diff options
context:
space:
mode:
authorEgor Kislitsyn <egor@kislitsyn.com>2020-04-20 18:37:45 +0400
committerEgor Kislitsyn <egor@kislitsyn.com>2020-04-20 18:40:02 +0400
commit736fead494f6140871919308e872bb6fe5b7a196 (patch)
tree13d9a869a8c551e7d9bb1ad07ca87f7123d74544 /lib/pleroma/web/twitter_api
parent163341857a726e8d74b6ddcd1230579e4c36a1b5 (diff)
parent28165dad3ac02a6d3ba4b0cda51992a1831515dd (diff)
downloadpleroma-736fead494f6140871919308e872bb6fe5b7a196.tar.gz
Merge branch 'develop' into openapi/account
Diffstat (limited to 'lib/pleroma/web/twitter_api')
-rw-r--r--lib/pleroma/web/twitter_api/twitter_api.ex9
-rw-r--r--lib/pleroma/web/twitter_api/twitter_api_controller.ex2
2 files changed, 7 insertions, 4 deletions
diff --git a/lib/pleroma/web/twitter_api/twitter_api.ex b/lib/pleroma/web/twitter_api/twitter_api.ex
index 37be48b5a..cf1d9c74c 100644
--- a/lib/pleroma/web/twitter_api/twitter_api.ex
+++ b/lib/pleroma/web/twitter_api/twitter_api.ex
@@ -21,7 +21,8 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
:captcha_token,
:captcha_answer_data,
:token,
- :email
+ :email,
+ :trusted_app
])
|> Map.put(:bio, User.parse_bio(params[:bio] || ""))
|> Map.put(:name, params.fullname)
@@ -42,14 +43,14 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
end
defp validate_captcha(params) do
- if Pleroma.Config.get([Pleroma.Captcha, :enabled]) do
+ if params[:trusted_app] || not Pleroma.Config.get([Pleroma.Captcha, :enabled]) do
+ :ok
+ else
Pleroma.Captcha.validate(
params.captcha_token,
params.captcha_solution,
params.captcha_answer_data
)
- else
- :ok
end
end
diff --git a/lib/pleroma/web/twitter_api/twitter_api_controller.ex b/lib/pleroma/web/twitter_api/twitter_api_controller.ex
index 0229aea97..31adc2817 100644
--- a/lib/pleroma/web/twitter_api/twitter_api_controller.ex
+++ b/lib/pleroma/web/twitter_api/twitter_api_controller.ex
@@ -15,6 +15,8 @@ defmodule Pleroma.Web.TwitterAPI.Controller do
plug(OAuthScopesPlug, %{scopes: ["write:notifications"]} when action == :notifications_read)
+ plug(:skip_plug, OAuthScopesPlug when action in [:oauth_tokens, :revoke_token])
+
plug(Pleroma.Plugs.EnsurePublicOrAuthenticatedPlug)
action_fallback(:errors)