Class: OpenStax::Connect::CurrentUserManager
- Inherits:
-
Object
- Object
- OpenStax::Connect::CurrentUserManager
- Defined in:
- lib/openstax/connect/current_user_manager.rb
Instance Method Summary collapse
-
#connect_current_user ⇒ Object
Returns the current connect user.
-
#current_user ⇒ Object
Returns the current app user.
- #initialize(request, session, cookies) ⇒ CurrentUserManager constructor
-
#sign_in(user) ⇒ Object
Signs in the given user; the argument can be either a connect user or an app user.
-
#sign_out! ⇒ Object
Signs out the user.
-
#signed_in? ⇒ Boolean
Returns true iff there is a user signed in.
Constructor Details
#initialize(request, session, cookies) ⇒ CurrentUserManager
References:
http://railscasts.com/episodes/356-dangers-of-session-hijacking
7 8 9 10 11 |
# File 'lib/openstax/connect/current_user_manager.rb', line 7 def initialize(request, session, ) @request = request @session = session @cookies = end |
Instance Method Details
#connect_current_user ⇒ Object
Returns the current connect user
38 39 40 41 |
# File 'lib/openstax/connect/current_user_manager.rb', line 38 def connect_current_user load_current_users @connect_current_user end |
#current_user ⇒ Object
Returns the current app user
14 15 16 17 |
# File 'lib/openstax/connect/current_user_manager.rb', line 14 def current_user load_current_users @app_current_user end |
#sign_in(user) ⇒ Object
Signs in the given user; the argument can be either a connect user or an app user
21 22 23 24 25 |
# File 'lib/openstax/connect/current_user_manager.rb', line 21 def sign_in(user) user.is_a?(User) ? self.connect_current_user = user : self.current_user = user end |
#sign_out! ⇒ Object
Signs out the user
28 29 30 |
# File 'lib/openstax/connect/current_user_manager.rb', line 28 def sign_out! sign_in(OpenStax::Connect::User.anonymous) end |
#signed_in? ⇒ Boolean
Returns true iff there is a user signed in
33 34 35 |
# File 'lib/openstax/connect/current_user_manager.rb', line 33 def signed_in? !connect_current_user.is_anonymous? end |