about summary refs log tree commit diff
path: root/app/models
diff options
context:
space:
mode:
authorClaire <claire.github-309c@sitedethib.com>2022-02-12 11:12:41 +0100
committerClaire <claire.github-309c@sitedethib.com>2022-02-12 11:12:41 +0100
commitd9379f53312f1bee490afb0fd7dc368df1a4a96d (patch)
tree1decb10519ec165483b735095e92ab2e94c2d080 /app/models
parent28ec7def5869ff1a85f49a070b9575c166a432ee (diff)
parent79b167f01a91f79d92afb442de282ded8696066a (diff)
Merge branch 'main' into glitch-soc/merge-upstream
Diffstat (limited to 'app/models')
-rw-r--r--app/models/notification.rb6
-rw-r--r--app/models/status.rb1
2 files changed, 5 insertions, 2 deletions
diff --git a/app/models/notification.rb b/app/models/notification.rb
index 3bf9dd483..c14eb8a7e 100644
--- a/app/models/notification.rb
+++ b/app/models/notification.rb
@@ -35,6 +35,7 @@ class Notification < ApplicationRecord
     follow_request
     favourite
     poll
+    update
   ).freeze
 
   TARGET_STATUS_INCLUDES_BY_TYPE = {
@@ -43,6 +44,7 @@ class Notification < ApplicationRecord
     mention: [mention: :status],
     favourite: [favourite: :status],
     poll: [poll: :status],
+    update: :status,
   }.freeze
 
   belongs_to :account, optional: true
@@ -76,7 +78,7 @@ class Notification < ApplicationRecord
 
   def target_status
     case type
-    when :status
+    when :status, :update
       status
     when :reblog
       status&.reblog
@@ -110,7 +112,7 @@ class Notification < ApplicationRecord
         cached_status = cached_statuses_by_id[notification.target_status.id]
 
         case notification.type
-        when :status
+        when :status, :update
           notification.status = cached_status
         when :reblog
           notification.status.reblog = cached_status
diff --git a/app/models/status.rb b/app/models/status.rb
index 236f95c1f..607b70712 100644
--- a/app/models/status.rb
+++ b/app/models/status.rb
@@ -65,6 +65,7 @@ class Status < ApplicationRecord
   has_many :favourites, inverse_of: :status, dependent: :destroy
   has_many :bookmarks, inverse_of: :status, dependent: :destroy
   has_many :reblogs, foreign_key: 'reblog_of_id', class_name: 'Status', inverse_of: :reblog, dependent: :destroy
+  has_many :reblogged_by_accounts, through: :reblogs, class_name: 'Account', source: :account
   has_many :replies, foreign_key: 'in_reply_to_id', class_name: 'Status', inverse_of: :thread
   has_many :mentions, dependent: :destroy, inverse_of: :status
   has_many :active_mentions, -> { active }, class_name: 'Mention', inverse_of: :status