Module: MinimumViableProduct::SessionConcern

Extended by:
ActiveSupport::Concern
Defined in:
app/controllers/concerns/minimum_viable_product/session_concern.rb

Constant Summary collapse

'_session'

Instance Method Summary collapse

Instance Method Details

#current_userObject



16
17
18
19
20
21
22
23
24
# File 'app/controllers/concerns/minimum_viable_product/session_concern.rb', line 16

def current_user
  @current_user ||= begin
                      if session[COOKIE_ID]
                        Conversion.find(session[COOKIE_ID])
                      end
                    rescue ActiveRecord::RecordNotFound
                      session[COOKIE_ID] = nil
                    end
end

#current_user=(user) ⇒ Object Also known as: sign_in



11
12
13
# File 'app/controllers/concerns/minimum_viable_product/session_concern.rb', line 11

def current_user=(user)
  session[COOKIE_ID] = user.id
end

#redirect_back_or_default(default = nil) ⇒ Object Also known as: redirect_to_back_or_default



39
40
41
# File 'app/controllers/concerns/minimum_viable_product/session_concern.rb', line 39

def redirect_back_or_default(default=nil)
  redirect_to(session.delete(:return_to) || default || request.referer)
end

#store_location(path = nil) ⇒ Object



27
28
29
30
31
32
33
34
35
36
# File 'app/controllers/concerns/minimum_viable_product/session_concern.rb', line 27

def store_location(path=nil)
  session[:return_to] = case
                        when !path.nil?
                          path
                        when request.get?
                          request.url
                        else
                          request.referer
                        end
end