Add option to keep id for follows.
This commit is contained in:
parent
36448d6483
commit
a2ca3b8605
|
@ -218,7 +218,7 @@ def announce(%User{ap_id: ap_id} = user, %Object{data: %{"id" => id}} = object,
|
||||||
{:ok, activity, object}
|
{:ok, activity, object}
|
||||||
end
|
end
|
||||||
|
|
||||||
def follow(%User{ap_id: follower_id, local: actor_local}, %User{ap_id: followed_id}, local \\ true) do
|
def follow(%User{ap_id: follower_id, local: actor_local}, %User{ap_id: followed_id}, activity_id \\ nil, local \\ true) do
|
||||||
data = %{
|
data = %{
|
||||||
"type" => "Follow",
|
"type" => "Follow",
|
||||||
"actor" => follower_id,
|
"actor" => follower_id,
|
||||||
|
@ -227,6 +227,8 @@ def follow(%User{ap_id: follower_id, local: actor_local}, %User{ap_id: followed_
|
||||||
"published" => make_date()
|
"published" => make_date()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
data = if activity_id, do: Map.put(data, "id", activity_id), else: data
|
||||||
|
|
||||||
with {:ok, activity} <- insert(data, local) do
|
with {:ok, activity} <- insert(data, local) do
|
||||||
if actor_local do
|
if actor_local do
|
||||||
Pleroma.Web.Federator.enqueue(:publish, activity)
|
Pleroma.Web.Federator.enqueue(:publish, activity)
|
||||||
|
|
Loading…
Reference in New Issue