Sha256: 8c157e6448bd9996f52104b13c9a4c8974d970151020d7674405fd597191b716

Contents?: true

Size: 877 Bytes

Versions: 9

Compression:

Stored size: 877 Bytes

Contents

module ShopifyApp
  module SessionStorage
    extend ActiveSupport::Concern

    included do
      if ShopifyApp.configuration.per_user_tokens?
        extend ShopifyApp::SessionStorage::UserStorageStrategy
      else
        extend ShopifyApp::SessionStorage::ShopStorageStrategy
      end

      validates :shopify_token, presence: true
      validates :api_version, presence: true
      validates :shopify_domain, presence: true,
        if: Proc.new {|_| ShopifyApp.configuration.per_user_tokens? }
      validates :shopify_domain, presence: true, uniqueness: { case_sensitive: false },
        if: Proc.new {|_| !ShopifyApp.configuration.per_user_tokens? }
    end

    def with_shopify_session(&block)
      ShopifyAPI::Session.temp(
        domain: shopify_domain,
        token: shopify_token,
        api_version: api_version,
        &block
      )
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
shopify_app-12.0.7 lib/shopify_app/session/session_storage.rb
shopify_app-12.0.6 lib/shopify_app/session/session_storage.rb
shopify_app-12.0.5 lib/shopify_app/session/session_storage.rb
shopify_app-12.0.4 lib/shopify_app/session/session_storage.rb
shopify_app-12.0.3 lib/shopify_app/session/session_storage.rb
shopify_app-12.0.2 lib/shopify_app/session/session_storage.rb
shopify_app-12.0.1 lib/shopify_app/session/session_storage.rb
shopify_app-12.0.0 lib/shopify_app/session/session_storage.rb
shopify_app-11.7.1 lib/shopify_app/session/session_storage.rb