|
|
|
@ -16,7 +16,7 @@ defmodule Pleroma.Web.Push.Impl do
|
|
|
|
|
require Logger
|
|
|
|
|
import Ecto.Query
|
|
|
|
|
|
|
|
|
|
@types ["Create", "Follow", "Announce", "Like", "Move"]
|
|
|
|
|
@types ["Create", "Follow", "Announce", "Like", "Move", "EmojiReact"]
|
|
|
|
|
|
|
|
|
|
@doc "Performs sending notifications for user subscriptions"
|
|
|
|
|
@spec perform(Notification.t()) :: list(any) | :error | {:error, :unknown_type}
|
|
|
|
@ -149,6 +149,15 @@ defmodule Pleroma.Web.Push.Impl do
|
|
|
|
|
"@#{actor.nickname} repeated: #{Utils.scrub_html_and_truncate(content, 80)}"
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def format_body(
|
|
|
|
|
%{activity: %{data: %{"type" => "EmojiReact", "content" => content}}},
|
|
|
|
|
actor,
|
|
|
|
|
_object,
|
|
|
|
|
_mastodon_type
|
|
|
|
|
) do
|
|
|
|
|
"@#{actor.nickname} has reacted with #{content}"
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def format_body(
|
|
|
|
|
%{activity: %{data: %{"type" => type}}} = notification,
|
|
|
|
|
actor,
|
|
|
|
@ -179,6 +188,7 @@ defmodule Pleroma.Web.Push.Impl do
|
|
|
|
|
"reblog" -> "New Repeat"
|
|
|
|
|
"favourite" -> "New Favorite"
|
|
|
|
|
"pleroma:chat_mention" -> "New Chat Message"
|
|
|
|
|
"pleroma:emoji_reaction" -> "New Reaction"
|
|
|
|
|
type -> "New #{String.capitalize(type || "event")}"
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|