class Courier::Template::Base

Constants

AvailableValues

Attributes

defaults[RW]
name[RW]

Public Class Methods

new(args) click to toggle source
# File lib/courier/template/base.rb, line 7
def initialize(args)
  self.name = args[:name].to_sym or raise 'no template name defined'
  self.defaults={}
end

Public Instance Methods

get(service) click to toggle source
# File lib/courier/template/base.rb, line 18
def get(service)
  service = Courier.service(service) if service.is_a?(Symbol)
  name = service.name.to_sym
  raise "Not defined default value for #{service} in template #{self}" unless defaults.has_key? name
  defaults[name]
end
get_text(service, args) click to toggle source
# File lib/courier/template/base.rb, line 12
def get_text(service, args)
  args[:scope]=[:courier, :services, service.to_s, :templates] unless args[:scope]
  args[:cascade]=true unless args.has_key? :cascade
  I18n::translate(name, args )
end
key() click to toggle source
# File lib/courier/template/base.rb, line 38
def key
  name
end
set(service, val) click to toggle source
# File lib/courier/template/base.rb, line 25
def set(service, val)
  service = Courier.service(service) if service.is_a?(Symbol)
  defaults[service.name.to_sym] = check_val(val)
end
to_label() click to toggle source
# File lib/courier/template/base.rb, line 34
def to_label
  I18n::translate(name, :scope=>[:courier,:templates] )
end
to_s() click to toggle source
# File lib/courier/template/base.rb, line 30
def to_s
  name.to_s
end

Private Instance Methods

check_val(val) click to toggle source
# File lib/courier/template/base.rb, line 44
def check_val(val)
  raise "Value must be one of  #{AvailableValues.join(', ')}" unless AvailableValues.include? val
  val
end