about summary refs log tree commit diff
path: root/app/models/follow.rb
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2016-02-23 19:17:37 +0100
committerEugen Rochko <eugen@zeonfederated.com>2016-02-23 19:17:37 +0100
commitfa33750105389110a3395ca19167f789d21a149e (patch)
tree4b121a067ad46be5189301a2e3e3b2bcef8d6426 /app/models/follow.rb
parent3b0bc18db928c455186273d9b9aa5b96d91e035e (diff)
Adding reblogs, favourites, improving atom generation
Diffstat (limited to 'app/models/follow.rb')
-rw-r--r--app/models/follow.rb15
1 files changed, 11 insertions, 4 deletions
diff --git a/app/models/follow.rb b/app/models/follow.rb
index 203215947..aa723d705 100644
--- a/app/models/follow.rb
+++ b/app/models/follow.rb
@@ -2,20 +2,23 @@ class Follow < ActiveRecord::Base
   belongs_to :account
   belongs_to :target_account, class_name: 'Account'
 
+  has_one :stream_entry, as: :activity
+
   validates :account, :target_account, presence: true
+  validates :account_id, uniqueness: { scope: :target_account_id }
 
   def verb
     :follow
   end
 
-  def object_type
-    :person
-  end
-
   def target
     self.target_account
   end
 
+  def object_type
+    target.object_type
+  end
+
   def content
     "#{self.account.acct} started following #{self.target_account.acct}"
   end
@@ -24,6 +27,10 @@ class Follow < ActiveRecord::Base
     content
   end
 
+  def mentions
+    []
+  end
+
   after_create do
     self.account.stream_entries.create!(activity: self)
   end