class Page
def load_subclasses
def load_subclasses ([TRUSTY_CMS_ROOT] + TrustyCms::Extension.descendants.map(&:root)).each do |path| Dir["#{path}/app/models/*_page.rb"].each do |page| $1.camelize.constantize if page =~ %r{/([^/]+)\.rb} end end if ActiveRecord::Base.connection.tables.include?('pages') && Page.column_names.include?('class_name') # Assume that we have bootstrapped Page.connection.select_values("SELECT DISTINCT class_name FROM pages WHERE class_name <> '' AND class_name IS NOT NULL").each do |p| begin p.constantize rescue NameError, LoadError #Rubocop: The use of eval is a serious security risk. #eval(%Q{class #{p} < Page; acts_as_tree; def self.missing?; true end end}, TOPLEVEL_BINDING) Rails.logger.error NameError end end end end