Module: Enjoy::HtmlField::ClassMethods

Defined in:
app/models/concerns/enjoy/html_field.rb

Instance Method Summary collapse

Instance Method Details

#enjoy_cms_html_field(name, opts = {}) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'app/models/concerns/enjoy/html_field.rb', line 6

def enjoy_cms_html_field(name, opts = {})
  clear_by_default = opts.delete(:clear_by_default)
  clear_by_default = false unless clear_by_default == true

  field "#{name}_html", opts
  field "#{name}_clear", type: Boolean, default: clear_by_default

  class_eval "    def \#{name}\n      self.\#{name}_html ||= \"\"\n      return self.\#{name}_html unless self.\#{name}_clear\n      Rails::Html::FullSanitizer.new.sanitize(self.\#{name}_html.strip)\n    end\n  EVAL\nend\n"