]> git.openstreetmap.org Git - rails.git/blobdiff - lib/redactable.rb
Avoid relying on the order in which emails are sent
[rails.git] / lib / redactable.rb
index b994e8563ab31e2934286d054533b0e2a555f712..a42164ec733dfc2006f361f919940c86a2cc9918 100644 (file)
@@ -1,15 +1,22 @@
-require 'osm'
+require "osm"
 
 module Redactable
+  def self.included(base)
+    # this is used to extend activerecord bases, as these aren't
+    # in scope for the module itself.
+    base.scope :unredacted, -> { base.where(:redaction_id => nil) }
+  end
+
   def redacted?
-    not self.redaction.nil?
+    !redaction.nil?
   end
 
   def redact!(redaction)
     # check that this version isn't the current version
-    raise OSM::APICannotRedactError.new if self.is_latest_version?
+    fail OSM::APICannotRedactError.new if self.is_latest_version?
 
     # make the change
     self.redaction = redaction
+    self.save!
   end
 end