Method: ActionTexter::Base#text

Defined in:
lib/action_texter/base.rb

#text(headers = {}, &block) ⇒ Object



85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
# File 'lib/action_texter/base.rb', line 85

def text(headers={}, &block)
  m = @_message

  wrap_delivery_behavior!(headers.delete(:delivery_method))

  # Call all the procs (if any)
  default_values = self.class.default.merge(self.class.default) do |k,v|
    v.respond_to?(:call) ? v.bind(self).call : v
  end
  headers = headers.reverse_merge(default_values)
  headers.each do |k, v|
    m[k] = v
  end

  templates_path = self.class.texter_name
  templates_name = action_name

  each_template(templates_path, templates_name) do |template|
    m.body ||= render(:template => template)
  end
  m
end