about summary refs log tree commit diff
path: root/app/models/notification.rb
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2022-02-23 16:45:22 +0100
committerGitHub <noreply@github.com>2022-02-23 16:45:22 +0100
commit7b816eb5aeeed61fa1e3a7c95cbb5bb7978f7fa5 (patch)
tree5888b4ec8bbb68d88c527ec8dada549f4a6c9b77 /app/models/notification.rb
parent3e12abc1fe9b32f69eaf2a8d1edf8bad9622eb4a (diff)
Add notifications for new sign-ups (#16953)
Diffstat (limited to 'app/models/notification.rb')
-rw-r--r--app/models/notification.rb14
1 files changed, 7 insertions, 7 deletions
diff --git a/app/models/notification.rb b/app/models/notification.rb
index c14eb8a7e..9bf296386 100644
--- a/app/models/notification.rb
+++ b/app/models/notification.rb
@@ -36,6 +36,7 @@ class Notification < ApplicationRecord
     favourite
     poll
     update
+    admin.sign_up
   ).freeze
 
   TARGET_STATUS_INCLUDES_BY_TYPE = {
@@ -63,13 +64,10 @@ class Notification < ApplicationRecord
   scope :without_suspended, -> { joins(:from_account).merge(Account.without_suspended) }
 
   scope :browserable, ->(exclude_types = [], account_id = nil) {
-    types = TYPES - exclude_types.map(&:to_sym)
-
-    if account_id.nil?
-      where(type: types)
-    else
-      where(type: types, from_account_id: account_id)
-    end
+    scope = all
+    scope = where(from_account_id: account_id) if account_id.present?
+    scope = scope.where(type: TYPES - exclude_types.map(&:to_sym)) unless exclude_types.empty?
+    scope
   }
 
   def type
@@ -142,6 +140,8 @@ class Notification < ApplicationRecord
       self.from_account_id = activity&.account_id
     when 'Mention'
       self.from_account_id = activity&.status&.account_id
+    when 'Account'
+      self.from_account_id = activity&.id
     end
   end
 end