lib/track_changes/action_controller.rb
def track_changes models, *args
      models_to_track = []
      models_to_track << models
      if args.kind_of?(Array)
        models_to_track << args
      end
      models_to_track.flatten!

      define_method(:__track_changes_to_models) { models_to_track }

      self.class_eval do
        helper :audits
        before_filter TrackChanges::CurrentUserFilter
      end
    end
def track_changes models, *args
      models_to_track = []
      models_to_track << models
      if args.kind_of?(Array)
        models_to_track << args
      end
      models_to_track.flatten!

      define_method(:__track_changes_to_models) { models_to_track }

      self.class_eval do
        helper :audits
        before_filter TrackChanges::CurrentUserFilter
      end
    end
def track_changes models , * args models_to_track = [ ] models_to_track << models if args . kind_of? ( Array ) models_to_track << args end models_to_track . flatten! define_method ( :__track_changes_to_models ) { models_to_track } self . class_eval do helper :audits before_filter TrackChanges :: CurrentUserFilter end end
Sets up an around filter to assign the controller's <tt>current_user</tt>
 to the given model names that are already set as instance variables in a
 prior <tt>before_filter</tt>.

 Example:

  track_changes :post
  track_changes :post, :post_attribute

 Currently does not work if the instance variable is anything except
 an model that has <tt>current_user</tt> accessors.
Sets up an around filter to assign the controller s <tt > current_user< / tt > to the given model names that are already set as instance variables in a prior <tt > before_filter< / tt > .