Sha256: d75f24102deb53c8ccb26d33697ef709e2932ac9ec95b0376bbb031e30769daf

Contents?: true

Size: 709 Bytes

Versions: 11

Compression:

Stored size: 709 Bytes

Contents

EXPIRATION_IN_SECONDS = 1.hours

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],
        role: user['role'],
        rendering_id: rendering_id,
        exp: expiration_in_seconds()
      }, ForestLiana.auth_secret, 'HS256')
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
forest_liana-6.6.3 app/services/forest_liana/token.rb
forest_liana-7.0.2 app/services/forest_liana/token.rb
forest_liana-7.0.1 app/services/forest_liana/token.rb
forest_liana-7.0.0 app/services/forest_liana/token.rb
forest_liana-7.0.0.beta.6 app/services/forest_liana/token.rb
forest_liana-7.0.0.beta.5 app/services/forest_liana/token.rb
forest_liana-7.0.0.beta.4 app/services/forest_liana/token.rb
forest_liana-7.0.0.beta.3 app/services/forest_liana/token.rb
forest_liana-6.6.2 app/services/forest_liana/token.rb
forest_liana-6.6.1 app/services/forest_liana/token.rb
forest_liana-6.6.0 app/services/forest_liana/token.rb