shopify_app 8.2.4 → 8.2.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3 -0
- data/README.md +2 -2
- data/app/controllers/shopify_app/sessions_controller.rb +4 -0
- data/app/views/shopify_app/sessions/new.html.erb +10 -1
- data/config/locales/en.yml +1 -0
- data/config/locales/fr.yml +1 -0
- data/lib/shopify_app/version.rb +1 -1
- data/shopify_app.gemspec +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7cb86cb83230251cb968831235d493374af72078
|
4
|
+
data.tar.gz: 9cc6298756b568b83a36bc223375687c9485e958
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9d6537b2fc344d439964c58e92f18460315161183e9f197dedb958f2997c225a0cca0a09d17afd7c274d441638a0c9730c0913325def0550edcdec7e726c1e0d
|
7
|
+
data.tar.gz: b98fd48e225d0b1d8a0f93b290c21c91bf7b796e2dcc47a426b9825a4e3b644062327d2c6fe9b483f37362972afe9e0546233046c5cc7af896edb330cd9782b8
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -143,7 +143,7 @@ After running the `install` generator, you can start your app with `bundle exec
|
|
143
143
|
$ rails generate shopify_app:shop_model
|
144
144
|
```
|
145
145
|
|
146
|
-
The install generator doesn't create any database tables or models for you. If you are starting a new app its quite likely that you will want a shops table and model to store the tokens when your app is installed (most of our internally developed apps do!). This generator creates a shop model and a migration. This model includes the `ShopifyApp::
|
146
|
+
The install generator doesn't create any database tables or models for you. If you are starting a new app its quite likely that you will want a shops table and model to store the tokens when your app is installed (most of our internally developed apps do!). This generator creates a shop model and a migration. This model includes the `ShopifyApp::SessionStorage` concern which adds two methods to make it compatible as a `SessionRepository`. After running this generator you'll notice the `session_repository` in your `config/initializers/shopify_app.rb` will be set to the `Shop` model. This means that internally ShopifyApp will try and load tokens from this model.
|
147
147
|
|
148
148
|
*Note that you will need to run rake db:migrate after this generator*
|
149
149
|
|
@@ -360,7 +360,7 @@ bin/rails g shopify_app:add_after_authenticate_job
|
|
360
360
|
ShopifyApp::SessionRepository
|
361
361
|
-----------------------------
|
362
362
|
|
363
|
-
`ShopifyApp::SessionRepository` allows you as a developer to define how your sessions are retrieved and stored for
|
363
|
+
`ShopifyApp::SessionRepository` allows you as a developer to define how your sessions are retrieved and stored for shops. The `SessionRepository` is configured in the `config/initializers/shopify_app.rb` file and can be set to any object that implements `self.store(shopify_session)` which stores the session and returns a unique identifier and `self.retrieve(id)` which returns a `ShopifyAPI::Session` for the passed id. See either the `ShopifyApp::InMemorySessionStore` class or the `ShopifyApp::SessionStorage` concern for examples.
|
364
364
|
|
365
365
|
If you only run the install generator then by default you will have an in memory store but it **won't work** on multi-server environments including Heroku. If you ran all the generators including the shop_model generator then the `Shop` model itself will be the `SessionRepository`. If you look at the implementation of the generated shop model you'll see that this gem provides a concern for the `SessionRepository`. You can use this concern on any model that responds to `shopify_domain` and `shopify_token`.
|
366
366
|
|
@@ -2,6 +2,9 @@ module ShopifyApp
|
|
2
2
|
class SessionsController < ActionController::Base
|
3
3
|
include ShopifyApp::LoginProtection
|
4
4
|
layout false, only: :new
|
5
|
+
after_action only: :new do |controller|
|
6
|
+
controller.response.headers.except!('X-Frame-Options')
|
7
|
+
end
|
5
8
|
|
6
9
|
def new
|
7
10
|
authenticate if sanitized_shop_name.present?
|
@@ -38,6 +41,7 @@ module ShopifyApp
|
|
38
41
|
session['shopify.omniauth_params'] = { shop: sanitized_shop_name }
|
39
42
|
fullpage_redirect_to "#{main_app.root_path}auth/shopify"
|
40
43
|
else
|
44
|
+
flash[:error] = I18n.t('invalid_shop_url')
|
41
45
|
redirect_to return_address
|
42
46
|
end
|
43
47
|
end
|
@@ -48,6 +48,12 @@
|
|
48
48
|
line-height: 2em;
|
49
49
|
}
|
50
50
|
|
51
|
+
.error {
|
52
|
+
line-height: 1em;
|
53
|
+
padding: 0.5em;
|
54
|
+
color: red;
|
55
|
+
}
|
56
|
+
|
51
57
|
input.marketing-input {
|
52
58
|
width: 100%;
|
53
59
|
height: 52px;
|
@@ -104,7 +110,10 @@
|
|
104
110
|
<label for="shop">Enter your shop domain to log in or install this app.</label>
|
105
111
|
</p>
|
106
112
|
|
107
|
-
<form method="
|
113
|
+
<form method="POST" action="login">
|
114
|
+
<% if flash[:error] %>
|
115
|
+
<div class=error><%= flash[:error] %></div>
|
116
|
+
<% end %>
|
108
117
|
<input id="shop" name="shop" type="text" autofocus="autofocus" placeholder="example.myshopify.com" class="marketing-input">
|
109
118
|
<button type="submit" class="marketing-button">Install</button>
|
110
119
|
</form>
|
data/config/locales/en.yml
CHANGED
data/config/locales/fr.yml
CHANGED
data/lib/shopify_app/version.rb
CHANGED
data/shopify_app.gemspec
CHANGED
@@ -8,7 +8,7 @@ Gem::Specification.new do |s|
|
|
8
8
|
s.author = "Shopify"
|
9
9
|
s.summary = %q{This gem is used to get quickly started with the Shopify API}
|
10
10
|
|
11
|
-
s.required_ruby_version = ">= 2.
|
11
|
+
s.required_ruby_version = ">= 2.3.1"
|
12
12
|
|
13
13
|
s.add_runtime_dependency('rails', '>= 5.0.0')
|
14
14
|
s.add_runtime_dependency('shopify_api', '>= 4.3.5')
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shopify_app
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 8.2.
|
4
|
+
version: 8.2.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shopify
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-12-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -207,7 +207,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
207
207
|
requirements:
|
208
208
|
- - ">="
|
209
209
|
- !ruby/object:Gem::Version
|
210
|
-
version: 2.
|
210
|
+
version: 2.3.1
|
211
211
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
212
212
|
requirements:
|
213
213
|
- - ">="
|