Module: FanforceApp

Defined in:
lib/fanforce/app_factory.rb

Defined Under Namespace

Classes: BaseController, CoreConfig, Sinatra

Class Method Summary collapse

Class Method Details

._idObject



38
39
40
# File 'lib/fanforce/app_factory.rb', line 38

def self._id
  config._id
end

.call(env) ⇒ Object



46
47
48
49
50
51
52
53
54
55
56
# File 'lib/fanforce/app_factory.rb', line 46

def self.call(env)
  if ENV['RACK_ENV'] == 'development' and env['PATH_INFO'] =~ /^\/assets\//
    env['PATH_INFO'] = env['PATH_INFO'].gsub(/^\/assets/, '')
    sprockets = SprocketsCompiler.setup(FanforceApp.config.root_dir)
    return sprockets.index.call(env)
  end
  require_relative 'app_factory/_init_sinatra'
  request = Rack::Request.new(env)
  Rack::JSONR.intercept_method_override(env, request, request.params, :all)
  FanforceApp::Sinatra.new.call(env)
end

.config(&block) ⇒ Object



21
22
23
24
25
26
27
28
# File 'lib/fanforce/app_factory.rb', line 21

def self.config(&block)
  config = @@config ||= FanforceApp::CoreConfig.new(ROOT_DIR)
  if block.present?
    block.call(config)
    config.root_dir = File.dirname($1) if !config.root_dir and caller[0].split(':')[0] =~ /^(.+(config\.ru|Rakefile))$/
  end
  config
end

.dir_nameObject



34
35
36
# File 'lib/fanforce/app_factory.rb', line 34

def self.dir_name
  config.dir_name
end

.load_configObject



42
43
44
# File 'lib/fanforce/app_factory.rb', line 42

def self.load_config
  config.load
end

.rootObject



30
31
32
# File 'lib/fanforce/app_factory.rb', line 30

def self.root
  config.root_dir
end