From 211f0a951375a33ed4278eef030e76a6bde9c396 Mon Sep 17 00:00:00 2001 From: Surinna Curtis Date: Wed, 13 Sep 2017 17:42:52 -0500 Subject: [PATCH] add an explanatory comment to AccountInteractions --- app/models/concerns/account_interactions.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/models/concerns/account_interactions.rb b/app/models/concerns/account_interactions.rb index 4a4265df2..6f69ce1d4 100644 --- a/app/models/concerns/account_interactions.rb +++ b/app/models/concerns/account_interactions.rb @@ -76,6 +76,7 @@ module AccountInteractions def mute!(other_account, notifications: true) mute = mute_relationships.create_with(hide_notifications: notifications).find_or_create_by!(target_account: other_account) + # When toggling a mute between hiding and allowing notifications, the mute will already exist, so the find_or_create_by! call will return the existing Mute without updating the hide_notifications attribute. Therefore, we check that hide_notifications? is what we want and set it if it isn't. if mute.hide_notifications? != notifications mute.hide_notifications = notifications mute.save!