Pārlūkot izejas kodu

Made follow request notifications non-optional (removed config switch).

features/attachment_validator
Ivan Tashkinov pirms 4 gadiem
vecāks
revīzija
92efb888c7
5 mainītis faili ar 3 papildinājumiem un 46 dzēšanām
  1. +1
    -1
      CHANGELOG.md
  2. +0
    -2
      config/config.exs
  3. +0
    -14
      config/description.exs
  4. +1
    -10
      lib/pleroma/notification.ex
  5. +1
    -19
      test/notification_test.exs

+ 1
- 1
CHANGELOG.md Parādīt failu

@@ -20,7 +20,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Configuration: `:restrict_unauthenticated` setting, restrict access for unauthenticated users to timelines (public and federate), user profiles and statuses.
- New HTTP adapter [gun](https://github.com/ninenines/gun). Gun adapter requires minimum OTP version of 22.2 otherwise Pleroma won’t start. For hackney OTP update is not required.
- Mix task to create trusted OAuth App.
- Notifications: Added `follow_request` notification type (configurable, see `[:notifications, :enable_follow_request_notifications]` setting).
- Notifications: Added `follow_request` notification type.
- Added `:reject_deletes` group to SimplePolicy
<details>
<summary>API Changes</summary>


+ 0
- 2
config/config.exs Parādīt failu

@@ -562,8 +562,6 @@ config :pleroma, :email_notifications,
inactivity_threshold: 7
}

config :pleroma, :notifications, enable_follow_request_notifications: false

config :pleroma, :oauth2,
token_expires_in: 600,
issue_new_refresh_token: true,


+ 0
- 14
config/description.exs Parādīt failu

@@ -2275,20 +2275,6 @@ config :pleroma, :config_description, [
},
%{
group: :pleroma,
key: :notifications,
type: :group,
description: "Notification settings",
children: [
%{
key: :enable_follow_request_notifications,
type: :boolean,
description:
"Enables notifications on new follow requests (causes issues with older PleromaFE versions)."
}
]
},
%{
group: :pleroma,
key: Pleroma.Emails.UserEmail,
type: :group,
description: "Email template settings",


+ 1
- 10
lib/pleroma/notification.ex Parādīt failu

@@ -293,17 +293,8 @@ defmodule Pleroma.Notification do
end
end

def create_notifications(%Activity{data: %{"type" => "Follow"}} = activity) do
if Pleroma.Config.get([:notifications, :enable_follow_request_notifications]) ||
Activity.follow_accepted?(activity) do
do_create_notifications(activity)
else
{:ok, []}
end
end

def create_notifications(%Activity{data: %{"type" => type}} = activity)
when type in ["Like", "Announce", "Move", "EmojiReact"] do
when type in ["Follow", "Like", "Announce", "Move", "EmojiReact"] do
do_create_notifications(activity)
end



+ 1
- 19
test/notification_test.exs Parādīt failu

@@ -312,9 +312,7 @@ defmodule Pleroma.NotificationTest do
})
end

test "if `follow_request` notifications are enabled, " <>
"it creates `follow_request` notification for pending Follow activity" do
clear_config([:notifications, :enable_follow_request_notifications], true)
test "it creates `follow_request` notification for pending Follow activity" do
user = insert(:user)
followed_user = insert(:user, locked: true)

@@ -333,21 +331,6 @@ defmodule Pleroma.NotificationTest do
assert %{type: "follow"} = NotificationView.render("show.json", render_opts)
end

test "if `follow_request` notifications are disabled, " <>
"it does NOT create `follow*` notification for pending Follow activity" do
clear_config([:notifications, :enable_follow_request_notifications], false)
user = insert(:user)
followed_user = insert(:user, locked: true)

{:ok, _, _, _activity} = CommonAPI.follow(user, followed_user)
refute FollowingRelationship.following?(user, followed_user)
assert [] = Notification.for_user(followed_user)

# After request is accepted, no new notifications are generated:
assert {:ok, _} = CommonAPI.accept_follow_request(user, followed_user)
assert [] = Notification.for_user(followed_user)
end

test "it doesn't create a notification for follow-unfollow-follow chains" do
user = insert(:user)
followed_user = insert(:user, locked: false)
@@ -364,7 +347,6 @@ defmodule Pleroma.NotificationTest do
end

test "dismisses the notification on follow request rejection" do
clear_config([:notifications, :enable_follow_request_notifications], true)
user = insert(:user, locked: true)
follower = insert(:user)
{:ok, _, _, _follow_activity} = CommonAPI.follow(follower, user)


Notiek ielāde…
Atcelt
Saglabāt