Class: ShopifyApp::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/shopify_app/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



46
47
48
49
50
51
52
# File 'lib/shopify_app/configuration.rb', line 46

def initialize
  @root_url = "/"
  @myshopify_domain = "myshopify.com"
  @scripttags_manager_queue_name = Rails.application.config.active_job.queue_name
  @webhooks_manager_queue_name = Rails.application.config.active_job.queue_name
  @disable_webpacker = ENV["SHOPIFY_APP_DISABLE_WEBPACKER"].present?
end

Instance Attribute Details

#after_authenticate_jobObject

Returns the value of attribute after_authenticate_job.



19
20
21
# File 'lib/shopify_app/configuration.rb', line 19

def after_authenticate_job
  @after_authenticate_job
end

#api_keyObject

Returns the value of attribute api_key.



9
10
11
# File 'lib/shopify_app/configuration.rb', line 9

def api_key
  @api_key
end

#api_versionObject

Returns the value of attribute api_version.



20
21
22
# File 'lib/shopify_app/configuration.rb', line 20

def api_version
  @api_version
end

#application_nameObject

Shopify App settings. These values should match the configuration for the app in your Shopify Partners page. Change your settings in ‘config/initializers/shopify_app.rb`



8
9
10
# File 'lib/shopify_app/configuration.rb', line 8

def application_name
  @application_name
end

#billingObject

takes a ShopifyApp::BillingConfiguration object



44
45
46
# File 'lib/shopify_app/configuration.rb', line 44

def billing
  @billing
end

#disable_webpackerObject

ability to have webpacker installed but not used in this gem and the generators



38
39
40
# File 'lib/shopify_app/configuration.rb', line 38

def disable_webpacker
  @disable_webpacker
end

#embedded_appObject Also known as: embedded_app?

Returns the value of attribute embedded_app.



15
16
17
# File 'lib/shopify_app/configuration.rb', line 15

def embedded_app
  @embedded_app
end

#embedded_redirect_urlObject

Returns the value of attribute embedded_redirect_url.



28
29
30
# File 'lib/shopify_app/configuration.rb', line 28

def embedded_redirect_url
  @embedded_redirect_url
end

#login_callback_urlObject



58
59
60
61
# File 'lib/shopify_app/configuration.rb', line 58

def 
  # Not including @root_url to keep historic behaviour
  @login_callback_url || File.join("auth/shopify/callback")
end

#login_urlObject



54
55
56
# File 'lib/shopify_app/configuration.rb', line 54

def 
  @login_url || File.join(@root_url, "login")
end

#myshopify_domainObject

configure myshopify domain for local shopify development



35
36
37
# File 'lib/shopify_app/configuration.rb', line 35

def myshopify_domain
  @myshopify_domain
end

#old_secretObject

Returns the value of attribute old_secret.



11
12
13
# File 'lib/shopify_app/configuration.rb', line 11

def old_secret
  @old_secret
end

#reauth_on_access_scope_changesObject

Returns the value of attribute reauth_on_access_scope_changes.



22
23
24
# File 'lib/shopify_app/configuration.rb', line 22

def reauth_on_access_scope_changes
  @reauth_on_access_scope_changes
end

#root_urlObject

customise urls



25
26
27
# File 'lib/shopify_app/configuration.rb', line 25

def root_url
  @root_url
end

#scopeObject

Returns the value of attribute scope.



12
13
14
# File 'lib/shopify_app/configuration.rb', line 12

def scope
  @scope
end

#scripttagsObject

Returns the value of attribute scripttags.



18
19
20
# File 'lib/shopify_app/configuration.rb', line 18

def scripttags
  @scripttags
end

#scripttags_manager_queue_nameObject

customise ActiveJob queue names



31
32
33
# File 'lib/shopify_app/configuration.rb', line 31

def scripttags_manager_queue_name
  @scripttags_manager_queue_name
end

#secretObject

Returns the value of attribute secret.



10
11
12
# File 'lib/shopify_app/configuration.rb', line 10

def secret
  @secret
end

#shop_access_scopesObject



103
104
105
# File 'lib/shopify_app/configuration.rb', line 103

def shop_access_scopes
  @shop_access_scopes || scope
end

#user_access_scopesObject



107
108
109
# File 'lib/shopify_app/configuration.rb', line 107

def user_access_scopes
  @user_access_scopes || scope
end

#webhook_jobs_namespaceObject

allow namespacing webhook jobs



41
42
43
# File 'lib/shopify_app/configuration.rb', line 41

def webhook_jobs_namespace
  @webhook_jobs_namespace
end

#webhooksObject

Returns the value of attribute webhooks.



17
18
19
# File 'lib/shopify_app/configuration.rb', line 17

def webhooks
  @webhooks
end

#webhooks_manager_queue_nameObject

Returns the value of attribute webhooks_manager_queue_name.



32
33
34
# File 'lib/shopify_app/configuration.rb', line 32

def webhooks_manager_queue_name
  @webhooks_manager_queue_name
end

Instance Method Details

#has_scripttags?Boolean

Returns:

  • (Boolean)


95
96
97
# File 'lib/shopify_app/configuration.rb', line 95

def has_scripttags?
  scripttags.present?
end

#has_webhooks?Boolean

Returns:

  • (Boolean)


91
92
93
# File 'lib/shopify_app/configuration.rb', line 91

def has_webhooks?
  webhooks.present?
end

#requires_billing?Boolean

Returns:

  • (Boolean)


99
100
101
# File 'lib/shopify_app/configuration.rb', line 99

def requires_billing?
  billing.present?
end

#shop_access_scopes_strategyObject



79
80
81
82
83
# File 'lib/shopify_app/configuration.rb', line 79

def shop_access_scopes_strategy
  return ShopifyApp::AccessScopes::NoopStrategy unless reauth_on_access_scope_changes

  ShopifyApp::AccessScopes::ShopStrategy
end

#shop_session_repositoryObject



75
76
77
# File 'lib/shopify_app/configuration.rb', line 75

def shop_session_repository
  ShopifyApp::SessionRepository.shop_storage
end

#shop_session_repository=(klass) ⇒ Object



71
72
73
# File 'lib/shopify_app/configuration.rb', line 71

def shop_session_repository=(klass)
  ShopifyApp::SessionRepository.shop_storage = klass
end

#user_access_scopes_strategyObject



85
86
87
88
89
# File 'lib/shopify_app/configuration.rb', line 85

def user_access_scopes_strategy
  return ShopifyApp::AccessScopes::NoopStrategy unless reauth_on_access_scope_changes

  ShopifyApp::AccessScopes::UserStrategy
end

#user_session_repositoryObject



67
68
69
# File 'lib/shopify_app/configuration.rb', line 67

def user_session_repository
  ShopifyApp::SessionRepository.user_storage
end

#user_session_repository=(klass) ⇒ Object



63
64
65
# File 'lib/shopify_app/configuration.rb', line 63

def user_session_repository=(klass)
  ShopifyApp::SessionRepository.user_storage = klass
end