Default follows for new users (#4871)
When a new user confirms their e-mail, bootstrap their home timeline by automatically following a set of accounts. By default, all local admin accounts (that are unlocked). Can be customized by new admin setting (comma-separated usernames, local and unlocked only)
This commit is contained in:
		
							parent
							
								
									f2cbfb2eb3
								
							
						
					
					
						commit
						7d7844a47f
					
				
					 11 changed files with 118 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -5,9 +5,9 @@ class FollowService < BaseService
 | 
			
		|||
 | 
			
		||||
  # Follow a remote user, notify remote user about the follow
 | 
			
		||||
  # @param [Account] source_account From which to follow
 | 
			
		||||
  # @param [String] uri User URI to follow in the form of username@domain
 | 
			
		||||
  # @param [String, Account] uri User URI to follow in the form of username@domain (or account record)
 | 
			
		||||
  def call(source_account, uri)
 | 
			
		||||
    target_account = ResolveRemoteAccountService.new.call(uri)
 | 
			
		||||
    target_account = uri.is_a?(Account) ? uri : ResolveRemoteAccountService.new.call(uri)
 | 
			
		||||
 | 
			
		||||
    raise ActiveRecord::RecordNotFound if target_account.nil? || target_account.id == source_account.id || target_account.suspended?
 | 
			
		||||
    raise Mastodon::NotPermittedError  if target_account.blocking?(source_account) || source_account.blocking?(target_account)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue