Module: Bandit::ControllerConcerns::InstanceMethods

Defined in:
lib/bandit/extensions/controller_concerns.rb

Instance Method Summary collapse

Instance Method Details

#bandit_choose(exp) ⇒ Object



22
23
24
25
26
27
28
29
30
# File 'lib/bandit/extensions/controller_concerns.rb', line 22

def bandit_choose(exp)
  name = "bandit_#{exp}".intern

  # choose url param with preference
  value = params[name].nil? ? cookies.signed[name] : params[name]

  # choose with default, and set cookie
  cookies.signed[name] = Bandit.get_experiment(exp).choose(value)
end

#bandit_convert!(exp, alt = nil, count = 1) ⇒ Object



12
13
14
15
16
17
18
19
20
# File 'lib/bandit/extensions/controller_concerns.rb', line 12

def bandit_convert!(exp, alt=nil, count=1)
  cookiename = "bandit_#{exp}".intern
  alt ||= cookies.signed[cookiename]
  unless alt.nil?
    Bandit.get_experiment(exp).convert!(alt, count)
    # delete cookie so we don't double track
    cookies.delete(cookiename)
  end
end