Class: SpudInquiry

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/spud_inquiry.rb

Instance Method Summary collapse

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(sym, *args) ⇒ Object

If a property is not defined here we want to check the dynamic fields list



19
20
21
22
23
24
25
# File 'app/models/spud_inquiry.rb', line 19

def method_missing(sym, *args)
  inquiry_field = self.spud_inquiry_fields.select{ |inquiry_field| inquiry_field.field_name == sym.to_s}
  if inquiry_field.any?
    return inquiry_field[0].value
  end
  super
end

Instance Method Details

#emailObject



9
10
11
12
13
14
15
# File 'app/models/spud_inquiry.rb', line 9

def email
  email_field = self.spud_inquiry_fields.where(:name => "email").first
  if !email_field.blank?
    return email_field.value
  end
  return "Unknown Sender"
end

#respond_to?(sym, include_all = false) ⇒ Boolean

Returns:

  • (Boolean)


27
28
29
30
31
32
33
34
35
36
# File 'app/models/spud_inquiry.rb', line 27

def respond_to?(sym, include_all=false)
  default_responds = super
  if !default_responds
    inquiry_field = self.spud_inquiry_fields.select{ |inquiry_field| inquiry_field.field_name == sym.to_s}
    if inquiry_field.any?
      return true
    end
  end
  return default_responds
end