Class: Adyen::SkinBuilder::Server

Inherits:
Sinatra::Base
  • Object
show all
Defined in:
lib/adyen-skinbuilder/server.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.adyen_admin_cfgObject



22
23
24
# File 'lib/adyen-skinbuilder/server.rb', line 22

def self.adyen_admin_cfg
  nil
end

.skins_directoryObject

method will be overwritten by vegas if skin directory given



18
19
20
# File 'lib/adyen-skinbuilder/server.rb', line 18

def self.skins_directory
  File.expand_path(".")
end

Instance Method Details

#adyen_loginObject



50
51
52
53
54
# File 'lib/adyen-skinbuilder/server.rb', line 50

def 
  if (cfg = settings.adyen_admin_cfg) && !Adyen::Admin.authenticated?
    Adyen::Admin.(cfg[:accountname], cfg[:username], cfg[:password])
  end
end

#render_skin(skin) ⇒ Object



56
57
58
59
60
61
# File 'lib/adyen-skinbuilder/server.rb', line 56

def render_skin(skin)
  erb(skin_erb_file(skin).to_sym, {
    :views => '/',
    :layout => File.join(settings.views, "layout.html").to_sym
  })
end

#skin_erb_file(skin, filename = "skin.html") ⇒ Object



44
45
46
47
48
# File 'lib/adyen-skinbuilder/server.rb', line 44

def skin_erb_file(skin, filename = "skin.html")
  if file = skin_file(skin, "#{filename}.erb")
    return file.gsub(".erb", "")
  end
end

#skin_file(skin, filename) ⇒ Object



36
37
38
39
40
41
42
# File 'lib/adyen-skinbuilder/server.rb', line 36

def skin_file(skin, filename)
  skin.get_file(filename).tap do |file|
    if !File.exists?(file)
      return File.join(settings.views, filename)
    end
  end
end

#skins_directoryObject



26
27
28
29
30
31
32
33
34
# File 'lib/adyen-skinbuilder/server.rb', line 26

def skins_directory
  @@skins_directory ||= begin
    # check if it's a skin, if so use dirname
    Adyen::Admin::Skin.new(:path => settings.skins_directory)
    File.dirname(settings.skins_directory)
  rescue ArgumentError
    settings.skins_directory
  end
end