Sha256: 3566472c63ea9ff1e04141bdeb600a6a5ec5efa3ef1c0c22e9523b650420d652

Contents?: true

Size: 676 Bytes

Versions: 7

Compression:

Stored size: 676 Bytes

Contents

class CmsPageObject < ActiveRecord::Base
  # attr_accessible :name, :obj_type
  
  belongs_to :page, :class_name => 'CmsPage', :foreign_key => 'cms_page_id'
  
  before_create :set_page_version
  
  
  def set_page_version
    if cms_page_version.to_i == 0
      self.cms_page_version = page.version
    end
  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*%)>/, '&lt;\1&gt;')
      value.gsub!(/<(%.*?\%x\s?\[.*?\s*%)>/, '&lt;\1&gt;')
      value.gsub!(/<(%.*?`.*?\s*%)>/, '&lt;\1&gt;')
    end
    super(value)
  end
  
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
imagine_cms-4.1.4 app/models/cms_page_object.rb
imagine_cms-4.1.3 app/models/cms_page_object.rb
imagine_cms-4.1.2 app/models/cms_page_object.rb
imagine_cms-4.1.1 app/models/cms_page_object.rb
imagine_cms-4.1.0 app/models/cms_page_object.rb
imagine_cms-4.0.1 app/models/cms_page_object.rb
imagine_cms-4.0.0 app/models/cms_page_object.rb