forked from AkkomaGang/akkoma
activitypub: mrf: tag policy: refactor the filtering hook a bit
This commit is contained in:
parent
9a69f08e86
commit
ff2c28fd6d
1 changed files with 9 additions and 15 deletions
|
@ -87,21 +87,7 @@ defp process_tag(
|
||||||
|
|
||||||
defp process_tag(_, message), do: {:ok, message}
|
defp process_tag(_, message), do: {:ok, message}
|
||||||
|
|
||||||
@impl true
|
def filter_message(actor, message) do
|
||||||
def filter(%{"object" => target_actor, "type" => "Follow"} = message) do
|
|
||||||
User.get_cached_by_ap_id(target_actor)
|
|
||||||
|> get_tags()
|
|
||||||
|> Enum.reduce({:ok, message}, fn
|
|
||||||
tag, {:ok, message} ->
|
|
||||||
process_tag(tag, message)
|
|
||||||
|
|
||||||
_, error ->
|
|
||||||
error
|
|
||||||
end)
|
|
||||||
end
|
|
||||||
|
|
||||||
@impl true
|
|
||||||
def filter(%{"actor" => actor, "type" => "Create"} = message) do
|
|
||||||
User.get_cached_by_ap_id(actor)
|
User.get_cached_by_ap_id(actor)
|
||||||
|> get_tags()
|
|> get_tags()
|
||||||
|> Enum.reduce({:ok, message}, fn
|
|> Enum.reduce({:ok, message}, fn
|
||||||
|
@ -113,6 +99,14 @@ def filter(%{"actor" => actor, "type" => "Create"} = message) do
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@impl true
|
||||||
|
def filter(%{"object" => target_actor, "type" => "Follow"} = message),
|
||||||
|
do: filter_message(target_actor, message)
|
||||||
|
|
||||||
|
@impl true
|
||||||
|
def filter(%{"actor" => actor, "type" => "Create"} = message),
|
||||||
|
do: filter_message(actor, message)
|
||||||
|
|
||||||
@impl true
|
@impl true
|
||||||
def filter(message), do: {:ok, message}
|
def filter(message), do: {:ok, message}
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue