]> git.openstreetmap.org Git - rails.git/blobdiff - lib/redactable.rb
Merge remote-tracking branch 'openstreetmap/pull/1030' into next
[rails.git] / lib / redactable.rb
index b994e8563ab31e2934286d054533b0e2a555f712..6adfec72a6aa1d0e8c1b039b16825a2843c09615 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?
+    raise OSM::APICannotRedactError.new if is_latest_version?
 
     # make the change
     self.redaction = redaction
+    save!
   end
 end