Sha256: a8bf6ce3c613b9617eda72bad4156008f2fff4bfe61f2b3fc2b7f28cf7dbb7eb

Contents?: true

Size: 681 Bytes

Versions: 8

Compression:

Stored size: 681 Bytes

Contents

EXPIRATION_IN_SECONDS = 14.days

module ForestLiana
  class Token
    REGEX_COOKIE_SESSION_TOKEN = /forest_session_token=([^;]*)/;

    def self.expiration_in_days
      Time.current + EXPIRATION_IN_SECONDS
    end

    def self.expiration_in_seconds
      return Time.now.to_i + EXPIRATION_IN_SECONDS
    end

    def self.create_token(user, rendering_id)
      return JWT.encode({
        id: user['id'],
        email: user['email'],
        first_name: user['first_name'],
        last_name: user['last_name'],
        team: user['teams'][0],
        rendering_id: rendering_id,
        exp: expiration_in_seconds()
      }, ForestLiana.auth_secret, 'HS256')
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
forest_liana-6.0.4 app/services/forest_liana/token.rb
forest_liana-6.0.3 app/services/forest_liana/token.rb
forest_liana-6.0.2 app/services/forest_liana/token.rb
forest_liana-6.0.1 app/services/forest_liana/token.rb
forest_liana-6.0.0 app/services/forest_liana/token.rb
forest_liana-6.0.0.pre.beta.4 app/services/forest_liana/token.rb
forest_liana-6.0.0.pre.beta.3 app/services/forest_liana/token.rb
forest_liana-6.0.0.pre.beta.2 app/services/forest_liana/token.rb