diff options
author | Egor Kislitsyn <egor@kislitsyn.com> | 2020-04-20 18:37:45 +0400 |
---|---|---|
committer | Egor Kislitsyn <egor@kislitsyn.com> | 2020-04-20 18:40:02 +0400 |
commit | 736fead494f6140871919308e872bb6fe5b7a196 (patch) | |
tree | 13d9a869a8c551e7d9bb1ad07ca87f7123d74544 /lib/pleroma/web/twitter_api | |
parent | 163341857a726e8d74b6ddcd1230579e4c36a1b5 (diff) | |
parent | 28165dad3ac02a6d3ba4b0cda51992a1831515dd (diff) | |
download | pleroma-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.ex | 9 | ||||
-rw-r--r-- | lib/pleroma/web/twitter_api/twitter_api_controller.ex | 2 |
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) |