Sha256: d00fb51e5f1ef46327a9220b1c8fd62072ef065a338ff3447c6b31a2ced67c93

Contents?: true

Size: 1.1 KB

Versions: 4

Compression:

Stored size: 1.1 KB

Contents

module Cardboard
  class Field::RichText < Field
    validate :is_required
    before_save :sanitize_value

    def value
      self.value_uid.try(:html_safe)
    end

    def default
      "<div><p><strong>Lorem Ipsum</strong> is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.</p></div>".html_safe
    end

    private
    
    def sanitize_value
      return nil unless value_changed?
      self.value = ActionController::Base.helpers.sanitize(self.value, :tags => %w(strong b i u em br p div span ul ol li a pre code blockquote h1 h2 h3), :attributes => %w(class style href src width height alt))
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
cardboard_cms-0.2.1 app/models/cardboard/field/rich_text.rb
cardboard_cms-0.1.8 app/models/cardboard/field/rich_text.rb
cardboard_cms-0.1.6 app/models/cardboard/field/rich_text.rb
cardboard_cms-0.1.4 app/models/cardboard/field/rich_text.rb