Module: Adyen::SkinBuilder::Helper::Render

Defined in:
lib/adyen-skinbuilder/helper/render.rb

Instance Method Summary collapse

Instance Method Details

#bufferObject

the output buffer



7
8
9
# File 'lib/adyen-skinbuilder/helper/render.rb', line 7

def buffer
  @_out_buf || @_buf
end

#captureObject

capture rendered output to a string



12
13
14
15
16
# File 'lib/adyen-skinbuilder/helper/render.rb', line 12

def capture
  pos = buffer.size
  yield
  buffer.slice!(pos..buffer.size)
end

#render_file(filename) ⇒ Object

renders a file from the inc folder of the skin



19
20
21
22
23
24
25
26
27
28
# File 'lib/adyen-skinbuilder/helper/render.rb', line 19

def render_file(filename)
  file = @skin.get_file("inc/#{filename}.txt")
  localized_file = @skin.get_file("inc/#{filename}_#{@locale}.txt")
  
  if File.exists?(localized_file)
    File.read(localized_file)
  elsif File.exists?(file)
    File.read(file)
  end
end

#render_partial(file, locals = {}) ⇒ Object

render an erb partial inline



35
36
37
38
39
40
41
42
43
# File 'lib/adyen-skinbuilder/helper/render.rb', line 35

def render_partial(file, locals = {})
  file = partialize(file)
  file = if views = locals.delete(:views)
    File.join(views, file)
  else
    @skin.get_file(file)
  end
  erb File.basename(file).gsub(".erb", "").to_sym, :layout => false, :views => File.dirname(file), :locals => locals
end

#t(*args) ⇒ Object



30
31
32
# File 'lib/adyen-skinbuilder/helper/render.rb', line 30

def t(*args)
  I18n.t(*args)
end