Sha256: 00554c2bc3dec36492082369ae068f599e506dee2a3614b6ae80d514ed087ace

Contents?: true

Size: 710 Bytes

Versions: 1

Compression:

Stored size: 710 Bytes

Contents

module Passkit
  class UrlGenerator
    include Passkit::Engine.routes.url_helpers

    VALIDITY = 30.days

    def initialize(pass_class, generator = nil)
      valid_until = VALIDITY.from_now

      payload = {valid_until: valid_until,
                 generator_class: generator&.class&.name,
                 generator_id: generator&.id,
                 pass_class: pass_class.name}
      @url = passes_api_url(host: ENV["PASSKIT_WEB_SERVICE_HOST"], payload: UrlEncrypt.encrypt(payload))
    end

    def ios
      @url
    end

    WALLET_PASS_PREFIX = "https://walletpass.io?u=".freeze
    # @see https://walletpasses.io/developer/
    def android
      "#{WALLET_PASS_PREFIX}#{@url}"
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
passkit-0.2.0 lib/passkit/url_generator.rb