Skip to content

Instantly share code, notes, and snippets.

@josevalim
Created December 3, 2009 19:00
Show Gist options
  • Save josevalim/248433 to your computer and use it in GitHub Desktop.
Save josevalim/248433 to your computer and use it in GitHub Desktop.
module InheritedResources
module Userstamp
def create_resource(obj)
record_user(obj, :creator, :updater)
super
end
def update_resource(obj, *args)
record_user(obj, :updater)
super
end
def destroy_resource(obj, *args)
record_user(obj, :deleter)
super
end
protected
def record_user(obj, *roles)
return unless current_user
roles.each do |role|
writer = :"#{role}="
obj.send(writer, user) if obj.respond_to?(writer)
end
end
end
end
InheritedResources::Base.send :include, InheritedResources::Userstamp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment