Sha256: 42e02cf9416b379f902786b32c1cab60139690bd6d38d21d95229ff2e4a2e22a
Contents?: true
Size: 730 Bytes
Versions: 42
Compression:
Stored size: 730 Bytes
Contents
class CmsTemplate < ActiveRecord::Base acts_as_versioned attr_accessible :name, :content attr_accessor :options has_many :pages, :class_name => 'CmsPage' def after_find require 'yaml' @options = YAML.load(self.options_yaml) if self.options_yaml end def content=(value) if value && value.is_a?(String) # filter suspicious content... go overboard for now, fine-tune later perhaps value.gsub!(/<(%.*?(exec|system)\s?\(.*?\s*%)>/, '<\1>') value.gsub!(/<(%.*?\%x\s?\[.*?\s*%)>/, '<\1>') value.gsub!(/<(%.*?`.*?\s*%)>/, '<\1>') end super(value) end def before_save require 'yaml' self.options_yaml = YAML.dump(@options) end end
Version data entries
42 entries across 42 versions & 1 rubygems