Enum.concat([to, cc, actor])
|> List.flatten()
+ |> Enum.uniq()
|> User.get_all_by_ap_id()
|> Enum.each(fn user ->
since_thirty_days_ago = NaiveDateTime.utc_now() |> NaiveDateTime.add(-(86_400 * 30))
false <- User.locked?(user),
false <- (user.bio || "") |> String.downcase() |> String.contains?("nobot"),
false <- outstanding_follow_request_since?(follower, user, since_thirty_days_ago) do
- Logger.info("#{__MODULE__}: Follow request from #{follower.nickname} to #{user.nickname}")
+ Logger.info(
+ "#{__MODULE__}: Follow request from #{follower.nickname} to #{user.nickname}"
+ )
+
CommonAPI.follow(follower, user)
end
end)
|> Queries.by_object_id()
|> Queries.by_type("Follow")
|> where([a], a.inserted_at > ^since_datetime)
- |> where([a], fragment("? ->> 'state' = 'pending'", a.data))
+ |> where([a], fragment("? ->> 'state' != 'accept'", a.data))
|> where([a], a.actor == ^follower_id)
|> Repo.exists?()
end