class SocMed::Services::Reports::BaseReport

Private Instance Methods

owner() click to toggle source
# File lib/soc_med/services/reports/base_report.rb, line 30
def owner
  owner_type, owner_id = owner_info
  owner = SocMed.owner_class.find_by(id: owner_id)
  raise ActiveRecord::RecordNotFound unless owner

  owner
end
owner_info() click to toggle source
# File lib/soc_med/services/reports/base_report.rb, line 38
def owner_info
  return params[:report][:owner_type], params[:report][:owner_id] unless params[:report].nil?
  return params[:owner_type], params[:owner_id]
end
report() click to toggle source
# File lib/soc_med/services/reports/base_report.rb, line 10
def report
  report = owner.likeable_objects.find_by(target: target)
  raise ActiveRecord::RecordNotFound unless report

  report
end
target() click to toggle source
# File lib/soc_med/services/reports/base_report.rb, line 17
def target
  target_type, target_id = target_info
  target = target_type.classify.constantize.find_by(id: target_id)
  raise ActiveRecord::RecordNotFound unless target

  target
end
target_info() click to toggle source
# File lib/soc_med/services/reports/base_report.rb, line 25
def target_info
  return params[:report][:target_type], params[:report][:target_id] unless params[:report].nil?
  return params[:target_type], params[:target_id]
end