Sha256: d5eb481eaa3b211aec5f1870b9583ed0ff66adacd75d23723604a171d73cbb27

Contents?: true

Size: 969 Bytes

Versions: 6

Compression:

Stored size: 969 Bytes

Contents

class DynamicFormDocument < ActiveRecord::Base
  belongs_to :dynamic_form_model

  has_dynamic_forms
	has_dynamic_data

  # declare a subclass
  # pass in name of subclass
  def self.declare(klass_name)    
    Object.send(:remove_const, klass_name) if Object.const_defined?(klass_name) and !Rails.configuration.cache_classes
    Object.const_set(klass_name, Class.new(DynamicFormDocument)) unless Object.const_defined?(klass_name)
  end

  def send_email
    begin
      WebsiteInquiryMailer.inquiry(self).deliver
    rescue Exception => e
      system_user = Party.find_by_description('Compass AE')
      AuditLog.custom_application_log_message(system_user, e)
    end
  end
  
  def self.class_exists?(class_name)
	result = nil
	begin
	  klass = Module.const_get(class_name)
      result = klass.is_a?(Class) ? ((klass.superclass == ActiveRecord::Base or klass.superclass == DynamicModel) ? true : nil) : nil
	rescue NameError
	  result = nil
	end
	result
  end

end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
erp_forms-2.0.6 app/models/dynamic_form_document.rb
erp_forms-2.0.5 app/models/dynamic_form_document.rb
erp_forms-2.0.4 app/models/dynamic_form_document.rb
erp_forms-2.0.3 app/models/dynamic_form_document.rb
erp_forms-2.0.2 app/models/dynamic_form_document.rb
erp_forms-2.0.1 app/models/dynamic_form_document.rb