projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'unify-mastodon-oauth' into 'develop'
[akkoma]
/
lib
/
pleroma
/
web
/
twitter_api
/
twitter_api.ex
diff --git
a/lib/pleroma/web/twitter_api/twitter_api.ex
b/lib/pleroma/web/twitter_api/twitter_api.ex
index dbad08e66d420eb9fb248c33184e533cadf573b9..cb483df9d7c384bdc0af141895287e6a3308525e 100644
(file)
--- a/
lib/pleroma/web/twitter_api/twitter_api.ex
+++ b/
lib/pleroma/web/twitter_api/twitter_api.ex
@@
-3,6
+3,7
@@
defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
alias Pleroma.Web.ActivityPub.ActivityPub
alias Pleroma.Web.TwitterAPI.UserView
alias Pleroma.Web.{OStatus, CommonAPI}
alias Pleroma.Web.ActivityPub.ActivityPub
alias Pleroma.Web.TwitterAPI.UserView
alias Pleroma.Web.{OStatus, CommonAPI}
+ alias Pleroma.Web.MediaProxy
import Ecto.Query
@instance Application.get_env(:pleroma, :instance)
import Ecto.Query
@instance Application.get_env(:pleroma, :instance)
@@
-20,10
+21,15
@@
defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
end
end
end
end
+ @activitypub Application.get_env(:pleroma, :activitypub)
+ @follow_handshake_timeout Keyword.get(@activitypub, :follow_handshake_timeout)
+
def follow(%User{} = follower, params) do
with {:ok, %User{} = followed} <- get_user(params),
{:ok, follower} <- User.maybe_direct_follow(follower, followed),
def follow(%User{} = follower, params) do
with {:ok, %User{} = followed} <- get_user(params),
{:ok, follower} <- User.maybe_direct_follow(follower, followed),
- {:ok, activity} <- ActivityPub.follow(follower, followed) do
+ {:ok, activity} <- ActivityPub.follow(follower, followed),
+ {:ok, follower, followed} <-
+ User.wait_and_refresh(@follow_handshake_timeout, follower, followed) do
{:ok, follower, followed, activity}
else
err -> err
{:ok, follower, followed, activity}
else
err -> err
@@
-92,7
+98,7
@@
defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
{:ok, object} = ActivityPub.upload(file)
url = List.first(object.data["url"])
{:ok, object} = ActivityPub.upload(file)
url = List.first(object.data["url"])
- href = url["href"]
+ href = url["href"]
|> MediaProxy.url()
type = url["mediaType"]
case format do
type = url["mediaType"]
case format do