class Curate::ContentDepositEventJob

Attributes

depositor_id[RW]
generic_file_id[RW]

Public Class Methods

new(generic_file_id, depositor_id) click to toggle source
# File lib/curate/jobs/content_deposit_event_job.rb, line 14
def initialize(generic_file_id, depositor_id)
  self.generic_file_id = generic_file_id
  self.depositor_id = depositor_id
end

Public Instance Methods

queue_name() click to toggle source
# File lib/curate/jobs/content_deposit_event_job.rb, line 8
def queue_name
  :event
end
run() click to toggle source
# File lib/curate/jobs/content_deposit_event_job.rb, line 19
def run
  gf = GenericFile.find(generic_file_id)
  action = "User #{depositor_id} has deposited #{gf.title} (#{gf.noid})"
  timestamp = Time.now.to_i
  depositor = ::User.find_by_user_key(depositor_id)
  
  event = depositor.create_event(action, timestamp)
  
  depositor.log_profile_event(event)
  
  gf.log_event(event)
  
  depositor.followers.select { |user| user.can? :read, gf }.each do |follower|
    follower.log_event(event)
  end
end