From 3bad294058b630a4542adc869f9646ba3364fd7a Mon Sep 17 00:00:00 2001 From: Roger Braun Date: Mon, 11 Sep 2017 20:43:25 +0200 Subject: [PATCH] Add reblogs to notifications. --- lib/pleroma/notification.ex | 2 +- lib/pleroma/web/mastodon_api/mastodon_api_controller.ex | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/pleroma/notification.ex b/lib/pleroma/notification.ex index 031f71091..8cd09ad8e 100644 --- a/lib/pleroma/notification.ex +++ b/lib/pleroma/notification.ex @@ -20,7 +20,7 @@ def for_user(user, opts \\ %{}) do Repo.all(query) end - def create_notifications(%Activity{id: id, data: %{"to" => to, "type" => type}} = activity) when type in ["Create", "Like"] do + def create_notifications(%Activity{id: id, data: %{"to" => to, "type" => type}} = activity) when type in ["Create", "Like", "Announce"] do users = User.get_notified_from_activity(activity) notifications = Enum.map(users, fn (user) -> create_notification(activity, user) end) diff --git a/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex b/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex index 3804a39f0..811162196 100644 --- a/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex +++ b/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex @@ -142,6 +142,9 @@ def notifications(%{assigns: %{user: user}} = conn, params) do "Like" -> liked_activity = Activity.get_create_activity_by_object_ap_id(activity.data["object"]) %{id: id, type: "favourite", created_at: created_at, account: AccountView.render("account.json", %{user: actor}), status: StatusView.render("status.json", %{activity: liked_activity})} + "Announce" -> + announced_activity = Activity.get_create_activity_by_object_ap_id(activity.data["object"]) + %{id: id, type: "reblog", created_at: created_at, account: AccountView.render("account.json", %{user: actor}), status: StatusView.render("status.json", %{activity: announced_activity})} _ -> nil end end)