X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/0d3a9ed9cb47ce3b89ea9eaffbb589f9a9ff6d22..124ec2e9d560e0df291e5a8e5aa67ef5db2f5d46:/app/models/redaction.rb diff --git a/app/models/redaction.rb b/app/models/redaction.rb index 43f5b3c7b..04f002e36 100644 --- a/app/models/redaction.rb +++ b/app/models/redaction.rb @@ -1,10 +1,10 @@ ## # Redaction represents a record associated with a particular # action on the database to hide revisions from the history -# which are not appropriate to redistribute any more. +# which are not appropriate to redistribute any more. # # The circumstances of the redaction can be recorded in the -# record's title and description fields, which can be +# record's title and description fields, which can be # displayed linked from the redacted records. # class Redaction < ActiveRecord::Base @@ -14,19 +14,12 @@ class Redaction < ActiveRecord::Base has_many :old_ways has_many :old_relations - after_initialize :set_defaults + validates :description, :presence => true + validates :description_format, :inclusion => { :in => %w[text html markdown] } - # this method overrides the AR default to provide the rich + # this method overrides the AR default to provide the rich # text object for the description field. def description - RichText.new(read_attribute(:description_format), read_attribute(:description)) - end - - private - - # set the default format to be markdown, in the absence of - # any other setting. - def set_defaults - self.description_format = "markdown" unless self.attribute_present?(:description_format) + RichText.new(self[:description_format], self[:description]) end end