projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'openapi/custom-emojis' into 'develop'
[akkoma]
/
lib
/
pleroma
/
web
/
twitter_api
/
twitter_api_controller.ex
diff --git
a/lib/pleroma/web/twitter_api/twitter_api_controller.ex
b/lib/pleroma/web/twitter_api/twitter_api_controller.ex
index 27f3664e0b1edcaf4740cde685812c97ad1fd641..31adc28174bf1c7af9855c82f2907290d4f681c0 100644
(file)
--- a/
lib/pleroma/web/twitter_api/twitter_api_controller.ex
+++ b/
lib/pleroma/web/twitter_api/twitter_api_controller.ex
@@
-1,28
+1,34
@@
# Pleroma: A lightweight social networking server
# Pleroma: A lightweight social networking server
-# Copyright © 2017-20
19
Pleroma Authors <https://pleroma.social/>
+# Copyright © 2017-20
20
Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.TwitterAPI.Controller do
use Pleroma.Web, :controller
alias Pleroma.Notification
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.TwitterAPI.Controller do
use Pleroma.Web, :controller
alias Pleroma.Notification
+ alias Pleroma.Plugs.OAuthScopesPlug
alias Pleroma.User
alias Pleroma.Web.OAuth.Token
alias Pleroma.Web.TwitterAPI.TokenView
require Logger
alias Pleroma.User
alias Pleroma.Web.OAuth.Token
alias Pleroma.Web.TwitterAPI.TokenView
require Logger
+ 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)
def confirm_email(conn, %{"user_id" => uid, "token" => token}) do
action_fallback(:errors)
def confirm_email(conn, %{"user_id" => uid, "token" => token}) do
- true <- user.local,
- true <- user.info.confirmation_pending,
- true <- user.info.confirmation_token == token,
- conn
- |> redirect(to: "/")
- with %User{info: info} = user <- User.get_cached_by_id(uid),
+ with %User{} = user <- User.get_cached_by_id(uid),
+ true <- user.local and user.confirmation_pending and user.confirmation_token == token,
{:ok, _} <-
{:ok, _} <-
- User.update_info(user, &User.Info.confirmation_changeset(&1, need_confirmation: false)) do
+ user
+ |> User.confirmation_changeset(need_confirmation: false)
+ |> User.update_and_set_cache() do
+ redirect(conn, to: "/")
end
end
end
end