Module: Tzispa::Helpers::Session
- Defined in:
- lib/tzispa/helpers/session.rb,
lib/tzispa/helpers/session_flash_bag.rb
Defined Under Namespace
Classes: SessionFlashBag
Constant Summary collapse
- SESSION_LAST_ACCESS =
:__last_access- SESSION_ID =
:__session_id- SESSION_AUTH_USER =
:__auth__user- GLOBAL_MESSAGE_FLASH =
:__global_message_flash
Instance Method Summary collapse
- #flash ⇒ Object
- #generate_session_id ⇒ Object
- #init_session ⇒ Object
- #last_access ⇒ Object
- #logged? ⇒ Boolean
- #login ⇒ Object
- #login=(user) ⇒ Object
- #logout ⇒ Object
- #session? ⇒ Boolean
- #set_last_access ⇒ Object
Instance Method Details
#flash ⇒ Object
27 28 29 |
# File 'lib/tzispa/helpers/session.rb', line 27 def flash @flash ||= SessionFlashBag.new(session, GLOBAL_MESSAGE_FLASH) end |
#generate_session_id ⇒ Object
51 52 53 54 55 56 |
# File 'lib/tzispa/helpers/session.rb', line 51 def generate_session_id SecureRandom.uuid.tap do |uuid| session.id = uuid session[SESSION_ID] = uuid end end |
#init_session ⇒ Object
15 16 17 |
# File 'lib/tzispa/helpers/session.rb', line 15 def init_session generate_session_id if config&.sessions&.enabled && !session? end |
#last_access ⇒ Object
23 24 25 |
# File 'lib/tzispa/helpers/session.rb', line 23 def last_access session[SESSION_LAST_ACCESS] end |
#logged? ⇒ Boolean
35 36 37 |
# File 'lib/tzispa/helpers/session.rb', line 35 def logged? session? && login end |
#login ⇒ Object
43 44 45 |
# File 'lib/tzispa/helpers/session.rb', line 43 def login session[SESSION_AUTH_USER] end |
#login=(user) ⇒ Object
39 40 41 |
# File 'lib/tzispa/helpers/session.rb', line 39 def login=(user) session[SESSION_AUTH_USER] = user unless user.nil? end |
#logout ⇒ Object
47 48 49 |
# File 'lib/tzispa/helpers/session.rb', line 47 def logout session.delete(SESSION_AUTH_USER) end |
#session? ⇒ Boolean
31 32 33 |
# File 'lib/tzispa/helpers/session.rb', line 31 def session? !session[SESSION_ID].nil? && (session[SESSION_ID] == session.id) end |
#set_last_access ⇒ Object
19 20 21 |
# File 'lib/tzispa/helpers/session.rb', line 19 def set_last_access session[SESSION_LAST_ACCESS] = Time.now.utc.iso8601 end |