mirror of
https://akkoma.dev/AkkomaGang/akkoma.git
synced 2024-12-23 01:35:28 +00:00
[#1559] Addressed code review requests.
This commit is contained in:
parent
3965772b26
commit
ac672a9d6b
|
@ -300,6 +300,8 @@ defmodule Pleroma.Activity do
|
|||
|
||||
def follow_accepted?(_), do: false
|
||||
|
||||
@spec mastodon_notification_type(Activity.t()) :: String.t() | nil
|
||||
|
||||
for {ap_type, type} <- @mastodon_notification_types, not is_list(type) do
|
||||
def mastodon_notification_type(%Activity{data: %{"type" => unquote(ap_type)}}),
|
||||
do: unquote(type)
|
||||
|
@ -315,11 +317,11 @@ defmodule Pleroma.Activity do
|
|||
|
||||
def mastodon_notification_type(%Activity{}), do: nil
|
||||
|
||||
@spec from_mastodon_notification_type(String.t()) :: String.t() | nil
|
||||
@doc "Converts Mastodon notification type to AR activity type"
|
||||
def from_mastodon_notification_type(type) do
|
||||
with {k, _v} <-
|
||||
Enum.find(@mastodon_notification_types, fn {_k, v} ->
|
||||
v == type or (is_list(v) and type in v)
|
||||
end) do
|
||||
Enum.find(@mastodon_notification_types, fn {_k, v} -> type in List.wrap(v) end) do
|
||||
k
|
||||
end
|
||||
end
|
||||
|
|
|
@ -113,17 +113,14 @@ defmodule Pleroma.Web.MastodonAPI.NotificationView do
|
|||
"move" ->
|
||||
put_target(response, activity, reading_user, render_opts)
|
||||
|
||||
"follow" ->
|
||||
response
|
||||
|
||||
"follow_request" ->
|
||||
response
|
||||
|
||||
"pleroma:emoji_reaction" ->
|
||||
response
|
||||
|> put_status(parent_activity_fn.(), reading_user, render_opts)
|
||||
|> put_emoji(activity)
|
||||
|
||||
type when type in ["follow", "follow_request"] ->
|
||||
response
|
||||
|
||||
_ ->
|
||||
nil
|
||||
end
|
||||
|
|
|
@ -153,10 +153,10 @@ defmodule Pleroma.Web.Push.Impl do
|
|||
when type in ["Follow", "Like"] do
|
||||
mastodon_type = mastodon_type || mastodon_notification_type(notification.activity)
|
||||
|
||||
case {type, mastodon_type} do
|
||||
{"Follow", "follow"} -> "@#{actor.nickname} has followed you"
|
||||
{"Follow", "follow_request"} -> "@#{actor.nickname} has requested to follow you"
|
||||
{"Like", _} -> "@#{actor.nickname} has favorited your post"
|
||||
case mastodon_type do
|
||||
"follow" -> "@#{actor.nickname} has followed you"
|
||||
"follow_request" -> "@#{actor.nickname} has requested to follow you"
|
||||
"favourite" -> "@#{actor.nickname} has favorited your post"
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -166,15 +166,16 @@ defmodule Pleroma.Web.Push.Impl do
|
|||
"New Direct Message"
|
||||
end
|
||||
|
||||
def format_title(%{activity: %{data: %{"type" => type}}} = notification, mastodon_type) do
|
||||
mastodon_type = mastodon_type || mastodon_notification_type(notification.activity)
|
||||
def format_title(%{activity: activity}, mastodon_type) do
|
||||
mastodon_type = mastodon_type || mastodon_notification_type(activity)
|
||||
|
||||
case {type, mastodon_type} do
|
||||
{"Create", _} -> "New Mention"
|
||||
{"Follow", "follow"} -> "New Follower"
|
||||
{"Follow", "follow_request"} -> "New Follow Request"
|
||||
{"Announce", _} -> "New Repeat"
|
||||
{"Like", _} -> "New Favorite"
|
||||
case mastodon_type do
|
||||
"mention" -> "New Mention"
|
||||
"follow" -> "New Follower"
|
||||
"follow_request" -> "New Follow Request"
|
||||
"reblog" -> "New Repeat"
|
||||
"favourite" -> "New Favorite"
|
||||
type -> "New #{String.capitalize(type || "event")}"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue