Module: ControllerActivityLogger

Extended by:
ActiveSupport::Concern
Defined in:
lib/activity_log/controller_activity_logger.rb

Defined Under Namespace

Modules: ClassMethods

Instance Method Summary collapse

Instance Method Details

#clear_parent_activity_id(options = {}) ⇒ Object



6
7
8
# File 'lib/activity_log/controller_activity_logger.rb', line 6

def clear_parent_activity_id(options = {})
  ModelActivityLogger.current_parent_activity_id = nil
end

#record_activity_log(options = {}) ⇒ Object



10
11
12
13
14
15
16
17
# File 'lib/activity_log/controller_activity_logger.rb', line 10

def record_activity_log(options = {})
  return unless params[options[:key] || :id].present?
  return if request.get? #exit if it's a get
  object = (options[:class] || controller_name).classify.constantize.find_by_id(params[options[:key] || :id])
  return unless object.present?
  return unless object.respond_to? :activity_logs
  ModelActivityLogger.current_parent_activity_id = object.activity_logs.create(user_id: current_user.try(:id), action: "#{params[:controller]}/#{params[:action]}", data: params, action_type: 'controller').id
end