Class: ActsAsIcontact::Message

Inherits:
Resource
  • Object
show all
Defined in:
lib/acts_as_icontact/resources/message.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Resource

#==, all, #connection, #error, #errors, find, find_by_id, first, #id, #method_missing, #new_record?, #save, #save!

Constructor Details

#initialize(properties = {}) ⇒ Message

Has a default messageType of “normal” if another isn’t passed as an option.



4
5
6
# File 'lib/acts_as_icontact/resources/message.rb', line 4

def initialize(properties={})
  super({:messageType => "normal"}.merge(properties))
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class ActsAsIcontact::Resource

Class Method Details

.required_on_createObject

Requires messageType and subject



9
10
11
# File 'lib/acts_as_icontact/resources/message.rb', line 9

def self.required_on_create
  super << "messageType" << "subject"
end

Instance Method Details

#validate_on_save(fields) ⇒ Object

messageType must be one of four values: normal, autoresponder, welcome, or confirmation



14
15
16
17
# File 'lib/acts_as_icontact/resources/message.rb', line 14

def validate_on_save(fields)
  messageType = %w(normal autoresponder welcome confirmation)
  raise ActsAsIcontact::ValidationError, "messageType must be one of: " + messageType.join(', ') unless messageType.include?(fields["messageType"])
end