44 lines
		
	
	
		
			522 B
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			522 B
		
	
	
	
		
			Ruby
		
	
	
	
# frozen_string_literal: true
 | 
						|
 | 
						|
module Streamable
 | 
						|
  extend ActiveSupport::Concern
 | 
						|
 | 
						|
  included do
 | 
						|
    has_one :stream_entry, as: :activity
 | 
						|
 | 
						|
    after_create do
 | 
						|
      account.stream_entries.create!(activity: self, hidden: hidden?) if needs_stream_entry?
 | 
						|
    end
 | 
						|
  end
 | 
						|
 | 
						|
  def title
 | 
						|
    super
 | 
						|
  end
 | 
						|
 | 
						|
  def content
 | 
						|
    title
 | 
						|
  end
 | 
						|
 | 
						|
  def target
 | 
						|
    super
 | 
						|
  end
 | 
						|
 | 
						|
  def object_type
 | 
						|
    :activity
 | 
						|
  end
 | 
						|
 | 
						|
  def thread
 | 
						|
    super
 | 
						|
  end
 | 
						|
 | 
						|
  def hidden?
 | 
						|
    false
 | 
						|
  end
 | 
						|
 | 
						|
  private
 | 
						|
 | 
						|
  def needs_stream_entry?
 | 
						|
    account.local?
 | 
						|
  end
 | 
						|
end
 |