Sha256: 403f010209cf42f89fa078433112eac051891d907841b60956b8ecd98c6200ac
Contents?: true
Size: 755 Bytes
Versions: 34
Compression:
Stored size: 755 Bytes
Contents
module Bookends class GlostickUserExtractor attr_reader :secret, :token def initialize(cookies, secret) @secret = secret @token = CGI::unescape(cookies[:heroku_user_session]) if cookies[:heroku_user_session] end def user session_info = decrypt_session_cookie if session_info && session_info['user'] session_info['user'] else { 'email' => '', 'full_name' => '' } end end private def decrypt_session_cookie return nil unless token && secret verifier = Fernet.verifier(secret, token) verifier.enforce_ttl = false return nil unless verifier.valid? JSON.parse(verifier.message) end end end
Version data entries
34 entries across 34 versions & 1 rubygems