about summary refs log tree commit diff
path: root/app/services/bootstrap_timeline_service.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/bootstrap_timeline_service.rb')
-rw-r--r--app/services/bootstrap_timeline_service.rb18
1 files changed, 15 insertions, 3 deletions
diff --git a/app/services/bootstrap_timeline_service.rb b/app/services/bootstrap_timeline_service.rb
index c01e25824..db2c83e5d 100644
--- a/app/services/bootstrap_timeline_service.rb
+++ b/app/services/bootstrap_timeline_service.rb
@@ -2,13 +2,25 @@
 
 class BootstrapTimelineService < BaseService
   def call(source_account)
-    bootstrap_timeline_accounts.each do |target_account|
-      FollowService.new.call(source_account, target_account)
-    end
+    @source_account = source_account
+
+    autofollow_inviter!
+    autofollow_bootstrap_timeline_accounts!
   end
 
   private
 
+  def autofollow_inviter!
+    return unless @source_account&.user&.invite&.autofollow?
+    FollowService.new.call(@source_account, @source_account.user.invite.user.account)
+  end
+
+  def autofollow_bootstrap_timeline_accounts!
+    bootstrap_timeline_accounts.each do |target_account|
+      FollowService.new.call(@source_account, target_account)
+    end
+  end
+
   def bootstrap_timeline_accounts
     return @bootstrap_timeline_accounts if defined?(@bootstrap_timeline_accounts)