Class: SessionManager
- Inherits:
-
Object
- Object
- SessionManager
- Defined in:
- lib/session_manager.rb
Instance Method Summary collapse
- #authorize!(id) ⇒ Object
- #check_login_data ⇒ Object
- #login_data ⇒ Object
- #login_data_update(account) ⇒ Object
- #set_cookies(cookies) ⇒ Object
- #set_session(session) ⇒ Object
- #whoami ⇒ Object
Instance Method Details
#authorize!(id) ⇒ Object
11 12 13 14 15 |
# File 'lib/session_manager.rb', line 11 def id @session[:uid] = id @cookies[:uid] = id @cookies[:chk] = (Digest::MD5.new.update "#{CONFIG[:pepper]}#{id}#{CONFIG[:salt]}").to_s end |
#check_login_data ⇒ Object
39 40 41 42 43 44 45 |
# File 'lib/session_manager.rb', line 39 def check_login_data begin @session[:login_data][:type].constantize.find_by({id: @session[:login_data][:id]}).present? rescue @session[:login_data] = nil end end |
#login_data ⇒ Object
29 30 31 32 |
# File 'lib/session_manager.rb', line 29 def login_data check_login_data @session[:login_data] end |
#login_data_update(account) ⇒ Object
34 35 36 37 |
# File 'lib/session_manager.rb', line 34 def login_data_update account @session[:login_data] = {type: account.class.name, id: account.id} @session[:uid] = account.user_card.id end |
#set_cookies(cookies) ⇒ Object
7 8 9 |
# File 'lib/session_manager.rb', line 7 def @cookies = end |
#set_session(session) ⇒ Object
3 4 5 |
# File 'lib/session_manager.rb', line 3 def set_session session @session = session end |
#whoami ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/session_manager.rb', line 17 def whoami if @session && @session[:uid] user = UserCard.find(@session[:uid]).userable username = user.name == '' ? "#{user.class.name}##{user.id}" : user.name username << " из компании #{user.company.name}" if user.class.name == 'Manager' && user.company.name username else 'Anonymous' end end |