Module: Card::Env

Extended by:
LocationHistory
Defined in:
lib/card/env.rb

Overview

Card::Env can differ for each request; Card.config should not

Defined Under Namespace

Modules: LocationHistory

Class Method Summary collapse

Methods included from LocationHistory

discard_locations_for, interrupted_action, location_history, previous_location, save_interrupted_action, save_location, url_key_for_location

Class Method Details

.[](key) ⇒ Object



24
25
26
# File 'lib/card/env.rb', line 24

def [] key
  @@env[key.to_sym]
end

.[]=(key, value) ⇒ Object



28
29
30
# File 'lib/card/env.rb', line 28

def []= key, value
  @@env[key.to_sym] = value
end

.ajax?Boolean

Returns:

  • (Boolean)


46
47
48
# File 'lib/card/env.rb', line 46

def ajax?
  self[:ajax]
end

.html?Boolean

Returns:

  • (Boolean)


50
51
52
# File 'lib/card/env.rb', line 50

def html?
  !self[:controller] || self[:html]
end

.method_missing(method_id, *args) ⇒ Object



54
55
56
57
58
59
60
# File 'lib/card/env.rb', line 54

def method_missing method_id, *args
  case args.length
  when 0 ; self[ method_id ]
  when 1 ; self[ method_id ] = args[0]
  else   ; super
  end
end

.paramsObject



33
34
35
# File 'lib/card/env.rb', line 33

def params
  self[:params] ||= {}
end

.reset(args = {}) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/card/env.rb', line 9

def reset args={}
  @@env = { :main_name => nil }

  if c = args[:controller]
    self[:controller] = c
    self[:session]    = c.request.session
    self[:params]     = c.params
    self[:ip]         = c.request.remote_ip
    self[:ajax]       = c.request.xhr? || c.request.params[:simulate_xhr]
    self[:html]       = [nil, 'html'].member?(c.params[:format])
    self[:host]       = Card.config.override_host     || c.request.env['HTTP_HOST']
    self[:protocol]   = Card.config.override_protocol || c.request.protocol
  end
end

.sessionObject



37
38
39
# File 'lib/card/env.rb', line 37

def session
  self[:session] ||= {}
end

.success(cardname = nil) ⇒ Object



41
42
43
# File 'lib/card/env.rb', line 41

def success cardname=nil
  self[:success] ||= Card::Success.new(cardname, params[:success])
end