alchemy-solidus 2.3.2 → 2.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: de5c64f8172aa48e4baf9a5f2d98b575a15d67f1cbee342e696602ad5e622d2e
4
- data.tar.gz: 90da86131495bac7078a39f3854dbc2cc37f290f2cb462e5bc58048ca364f7ea
3
+ metadata.gz: b6e92c70519b42d1b2ddd77907a413ee2ac8657b8bf180987d28c9beb12b93d9
4
+ data.tar.gz: 8dc7e00168b554f7efb2fbe01e884f269a7112d6feeaa7a63aa62c614271cf1d
5
5
  SHA512:
6
- metadata.gz: ebf23bca2c312fcb51bfa7ed97edd560bc1543c8b7b9f1a0df477daa418741453021f30df69b29b9b18048de697035925b07dfe8d7a7f601c94d3303bba4e8fc
7
- data.tar.gz: ee0997b1e2b7d43f032f5f5f12c637a2df0b2ce07afd2ac1363fdca6407862659d97bac6289373278ead07ebc621b9746920cae396a0b7638843be955403da31
6
+ metadata.gz: 45edca46563a2713b35b39ddd58e743909b0a72219532087264b6d4eb66aebe1199bd466d5d0833b80a04265106ebfcdc866510ecedc25f272f5a54c25701740
7
+ data.tar.gz: 78f94fce34c3689cd843da7a451bbe34e83100bd31c1f85b1f3ea0c761dba578b6b292cd340622917a08d39a8c8e74fed755a9a51ce278f7d1976c30a831dc70
data/README.md CHANGED
@@ -1,57 +1,69 @@
1
1
  [![Build Status](https://travis-ci.org/AlchemyCMS/alchemy-solidus.svg?branch=master)](https://travis-ci.org/AlchemyCMS/alchemy-solidus)
2
2
 
3
- # AlchemyCMS Solidus Integration
3
+ # Alchemy-Solidus
4
4
 
5
- The World's Most Flexible E-Commerce Platform meets The World's Most Flexible Content Management System!
6
-
7
- This gem is a [AlchemyCMS](https://github.com/AlchemyCMS/alchemy_cms) and [Solidus](https://github.com/solidusio/solidus) connector.
8
-
9
- ### For now it does this:
5
+ This is a [AlchemyCMS](https://alchemy-cms.com) and [Solidus](https://solidus.io) integration gem.
10
6
 
11
7
  1. It provides tabs in Alchemy and Solidus menus to easily switch between both backends
12
8
  2. It offers two new Essences for Alchemy called `EssenceSpreeProduct` and `EssenceSpreeTaxon` that you can use to place Spree products and/or Taxons on your pages.
13
9
  3. Shares admin sessions and user abilities between Alchemy and Solidus.
14
10
 
15
- ### Compatibility
11
+ ## Compatibility
12
+
13
+ ### Solidus
16
14
 
17
- ## Solidus
15
+ This version runs with Solidus 2.6 and above.
18
16
 
19
- This version runs with Solidus 2.0 and above. For a Solidus 1 compatible version please use the `1.0-stable` branch or 1.1.0 gem version.
17
+ - For a Solidus < 2.6 compatible version please use the `2.3-stable` branch or `2.3.2` gem version.
18
+ - For a Solidus 1.x compatible version please use the `1.0-stable` branch or `1.1.0` gem version.
20
19
 
21
- ## Alchemy
20
+ ### Alchemy
22
21
 
23
- This version runs with Alchemy 4.0 and above. For a Alchemy 3 compatible version please use the `1.0-stable` branch or 1.1.0 gem version.
22
+ This version runs with Alchemy 4.1 and above.
23
+
24
+ - For a Alchemy 4.0 compatible version please use the `2.3-stable` branch or `2.3.2` gem version.
25
+ - For a Alchemy 3.x compatible version please use the `1.0-stable` branch or `1.1.0` gem version.
24
26
 
25
27
  ## Installation
26
28
 
27
- Add this line to your application's Gemfile:
29
+ Add this line to your applications `Gemfile`:
28
30
 
29
31
  ```ruby
30
- gem 'alchemy-solidus', github: 'AlchemyCMS/alchemy-solidus', branch: 'master'
32
+ gem 'alchemy-solidus', '~> 2.4.0'
31
33
  ```
32
34
 
33
35
  Install the gem with:
34
36
 
35
- ```shell
37
+ ```bash
36
38
  $ bundle install
37
39
  ```
38
40
 
39
41
  ## Automated setup
40
42
 
41
- We ship a Rails generator that helps you to install this gem into your existing Rails app.
43
+ We ship a Rails generator that helps you to install this gem into your existing application.
42
44
 
43
- ```
45
+ ```bash
44
46
  $ bin/rails g alchemy:solidus:install
45
47
  ```
46
48
 
47
- There are several options available, please check them by:
49
+ There are several options available, please check them with
48
50
 
49
- ```
51
+ ```bash
50
52
  $ bin/rails g alchemy:solidus:install --help
51
53
  ```
52
54
 
55
+ ## Upgrading
56
+
57
+ To upgrade update the Gemfile and run the install generator again
58
+
59
+ ```bash
60
+ $ bin/rails g alchemy:solidus:install
61
+ ```
62
+
53
63
  ## Manual setup
54
64
 
65
+ If you want to have full control over the integration you can also set this up manually.
66
+
55
67
  ### Authentication system installation
56
68
 
57
69
  Both Alchemy and Solidus come without an authentication system in place. You will need to choose an authentication system yourself. There are 3 available options. Whichever you choose, you need to instruct Solidus & Alchemy about your choice of authentication system.
@@ -96,7 +108,7 @@ gem 'alchemy-devise', '~> 4.1'
96
108
 
97
109
  and install it:
98
110
 
99
- ```shell
111
+ ```bash
100
112
  $ bundle install
101
113
  $ bundle exec rails g alchemy:devise:install
102
114
  ```
@@ -105,13 +117,13 @@ Run the Solidus installer:
105
117
 
106
118
  *NOTE*: Skip this if you already have a running Solidus installation.
107
119
 
108
- ```shell
120
+ ```bash
109
121
  $ bundle exec rails g spree:install
110
122
  ```
111
123
 
112
124
  Then run the solidus custom user generator:
113
125
 
114
- ```shell
126
+ ```bash
115
127
  $ bundle exec rails g spree:custom_user Alchemy::User
116
128
  ```
117
129
 
@@ -143,21 +155,21 @@ and tell Solidus about Alchemy's path helpers:
143
155
  ...
144
156
  ```
145
157
 
146
- #### 3. Option: Build their own authentication
158
+ #### 3. Option: Build your own authentication
147
159
 
148
- Please follow the [spree custom authentication](https://guides.spreecommerce.com/developer/authentication.html) and the [Alchemy custom authentication](http://guides.alchemy-cms.com/edge/custom_authentication.html) guides in order to integrate your custom user with Solidus and Alchemy.
160
+ Please follow the [Solidus custom authentication](https://guides.solidus.io/developers/users/custom-authentication.html) and the [Alchemy custom authentication](https://guides.alchemy-cms.com/custom_authentication.html) guides in order to integrate your custom user with Solidus and Alchemy.
149
161
 
150
- #### In either case
162
+ ### In either case
151
163
 
152
164
  Install the migrations
153
165
 
154
- ```shell
166
+ ```bash
155
167
  $ bundle exec rake alchemy_solidus:install:migrations
156
168
  ```
157
169
 
158
170
  Run the installer of Alchemy
159
171
 
160
- ```shell
172
+ ```bash
161
173
  $ bundle exec rake alchemy:install
162
174
  ```
163
175
 
@@ -185,11 +197,11 @@ initializer:
185
197
  require 'alchemy/solidus/alchemy_in_solidus'
186
198
  ```
187
199
 
188
- ## Routing
200
+ ### Routing
189
201
 
190
202
  For routing you have a few options.
191
203
 
192
- ### Place both engines in their own namespace:
204
+ #### Place both engines in their own namespace:
193
205
 
194
206
  ```ruby
195
207
  # config/routes.rb
@@ -197,7 +209,7 @@ mount Spree::Core::Engine => '/store'
197
209
  mount Alchemy::Engine => '/pages'
198
210
  ```
199
211
 
200
- ### Put Solidus at the root level and Alchemy in its own namespace:
212
+ #### Put Solidus at the root level and Alchemy in its own namespace:
201
213
 
202
214
  ```ruby
203
215
  # config/routes.rb
@@ -205,7 +217,7 @@ mount Alchemy::Engine => '/pages'
205
217
  mount Spree::Core::Engine => '/'
206
218
  ```
207
219
 
208
- ### Put Alchemy at the root level and Solidus in its own namespace:
220
+ #### Put Alchemy at the root level and Solidus in its own namespace:
209
221
 
210
222
  ```ruby
211
223
  # config/routes.rb
@@ -213,7 +225,7 @@ mount Spree::Core::Engine => '/store'
213
225
  mount Alchemy::Engine => '/'
214
226
  ```
215
227
 
216
- ### Put both engines in the root level
228
+ #### Put both engines in the root level
217
229
 
218
230
  ```ruby
219
231
  # config/routes.rb
@@ -229,6 +241,8 @@ mount Alchemy::Engine => '/'
229
241
 
230
242
  ## Usage
231
243
 
244
+ Please make yourself familiar with AlchemyCMS by [reading the guidelines](https://guides.alchemy-cms.com)
245
+
232
246
  ### Create a new Element for Alchemy
233
247
 
234
248
  ```yaml
@@ -260,14 +274,38 @@ $ rails g alchemy:elements --skip
260
274
  elements: [product_category]
261
275
  ```
262
276
 
263
- ### You can haz Solidus product and taxons!
277
+ ### Access the Solidus product or taxon in your element views
278
+
279
+ You can mix Alchemy and Solidus content in the same view.
264
280
 
265
281
  ```erb
266
- # app/views/alchemy/elements/_product_view.html.erb
267
- <%= element.ingredient('spree_product') %>
282
+ <!-- app/views/alchemy/elements/_product_view.html.erb -->
283
+ <% cache element do %>
284
+ <%= element_view_for element do |el| %>
285
+ <% product = el.ingredient(:spree_product) %>
286
+ <h1><%= product.name %></h1>
287
+ <p><%= product.description %></p>
288
+ <%= el.render :text %>
289
+ <%= el.render :image %>
290
+ <% end %>
291
+ <% end %>
292
+ ```
268
293
 
269
- # app/views/alchemy/elements/_product_category_view.html.erb
270
- <%= element.ingredient('spree_taxon') %>
294
+ Or for a list of taxon products
295
+
296
+ ```erb
297
+ <!-- app/views/alchemy/elements/_product_category_view.html.erb -->
298
+ <% cache element do %>
299
+ <%= element_view_for element do |el| %>
300
+ <h2><%= el.render :headline %></h2>
301
+ <%= el.render :description %>
302
+
303
+ <% taxon = el.ingredient(:spree_taxon) %>
304
+ <% taxon.products.each do |product| %>
305
+ <%= link_to product.name, spree.product_path(product) %>
306
+ <% end %>
307
+ <% end %>
308
+ <% end %>
271
309
  ```
272
310
 
273
311
  Alchemy :heart: Solidus!
data/Rakefile CHANGED
@@ -21,7 +21,7 @@ task :test_setup do
21
21
  export RAILS_ENV=test && \
22
22
  bin/rake db:environment:set db:drop && \
23
23
  bin/rails g spree:install --force --quiet --auto-accept --no-seed --no-sample && \
24
- bin/rails g alchemy:solidus:install --auto-accept
24
+ bin/rails g alchemy:solidus:install --auto-accept --force
25
25
  SETUP
26
26
  exit($?.exitstatus) unless $?.success?
27
27
  end
@@ -5,7 +5,9 @@ alchemy_module = {
5
5
  controller: 'spree/admin/orders',
6
6
  action: 'index',
7
7
  name: 'Store',
8
- image: 'alchemy/solidus/alchemy_module_icon.png',
8
+ inline_image: '<svg version="1.1" width="24px" height="24px" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" style="vertical-align: middle">
9
+ <path d="M 6.687 21.839 L 17.314 21.839 L 17.314 2.162 L 6.687 2.162 Z M 19.476 24 L 4.525 24 L 4.525 0 L 19.476 0 Z M 13.89 17 C 13.307 16.662 13.078 16.287 13.05 15.313 L 13.05 8.574 C 13.05 6.554 12.05 5.814 9.911 4.794 L 8.99 6.434 L 10.111 7.074 C 10.693 7.412 10.923 7.786 10.951 8.761 L 10.951 15.5 C 10.951 17.52 11.951 18.26 14.09 19.279 L 15.01 17.64 Z" fill="currentColor"/>
10
+ </svg>',
9
11
  data: { turbolinks: false },
10
12
  sub_navigation: [
11
13
  {
@@ -8,12 +8,6 @@ module Alchemy
8
8
  class Engine < ::Rails::Engine
9
9
  engine_name 'alchemy_solidus'
10
10
 
11
- initializer 'alchemy_solidus.assets' do |app|
12
- app.config.assets.precompile += [
13
- 'alchemy/solidus/alchemy_module_icon.png'
14
- ]
15
- end
16
-
17
11
  config.to_prepare do
18
12
  Alchemy.register_ability ::Spree::Ability
19
13
  ::Spree::Ability.register_ability ::Alchemy::Permissions
@@ -1,5 +1,5 @@
1
1
  module Alchemy
2
2
  module Solidus
3
- VERSION = "2.3.2"
3
+ VERSION = "2.4.0"
4
4
  end
5
5
  end
@@ -5,7 +5,9 @@ Alchemy::Modules.register_module({
5
5
  controller: 'spree/admin/orders',
6
6
  action: 'index',
7
7
  name: 'Store',
8
- image: 'alchemy/solidus/alchemy_module_icon.png',
8
+ inline_image: '<svg version="1.1" width="24px" height="24px" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" style="vertical-align: middle">
9
+ <path d="M 6.687 21.839 L 17.314 21.839 L 17.314 2.162 L 6.687 2.162 Z M 19.476 24 L 4.525 24 L 4.525 0 L 19.476 0 Z M 13.89 17 C 13.307 16.662 13.078 16.287 13.05 15.313 L 13.05 8.574 C 13.05 6.554 12.05 5.814 9.911 4.794 L 8.99 6.434 L 10.111 7.074 C 10.693 7.412 10.923 7.786 10.951 8.761 L 10.951 15.5 C 10.951 17.52 11.951 18.26 14.09 19.279 L 15.01 17.64 Z" fill="currentColor"/>
10
+ </svg>',
9
11
  data: { turbolinks: false },
10
12
  sub_navigation: [
11
13
  {
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alchemy-solidus
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.2
4
+ version: 2.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas von Deyen
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 4.0.0.beta
19
+ version: 4.1.0
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: '5.0'
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 4.0.0.beta
29
+ version: 4.1.0
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: '5.0'
@@ -34,30 +34,42 @@ dependencies:
34
34
  name: solidus_core
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
- - - "~>"
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: 2.6.0
40
+ - - "<"
38
41
  - !ruby/object:Gem::Version
39
- version: '2.0'
42
+ version: '3.0'
40
43
  type: :runtime
41
44
  prerelease: false
42
45
  version_requirements: !ruby/object:Gem::Requirement
43
46
  requirements:
44
- - - "~>"
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: 2.6.0
50
+ - - "<"
45
51
  - !ruby/object:Gem::Version
46
- version: '2.0'
52
+ version: '3.0'
47
53
  - !ruby/object:Gem::Dependency
48
54
  name: solidus_backend
49
55
  requirement: !ruby/object:Gem::Requirement
50
56
  requirements:
51
- - - "~>"
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ version: 2.6.0
60
+ - - "<"
52
61
  - !ruby/object:Gem::Version
53
- version: '2.0'
62
+ version: '3.0'
54
63
  type: :runtime
55
64
  prerelease: false
56
65
  version_requirements: !ruby/object:Gem::Requirement
57
66
  requirements:
58
- - - "~>"
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: 2.6.0
70
+ - - "<"
59
71
  - !ruby/object:Gem::Version
60
- version: '2.0'
72
+ version: '3.0'
61
73
  - !ruby/object:Gem::Dependency
62
74
  name: solidus_support
63
75
  requirement: !ruby/object:Gem::Requirement
@@ -166,7 +178,6 @@ files:
166
178
  - LICENSE
167
179
  - README.md
168
180
  - Rakefile
169
- - app/assets/images/alchemy/solidus/alchemy_module_icon.png
170
181
  - app/models/alchemy/essence_spree_product.rb
171
182
  - app/models/alchemy/essence_spree_taxon.rb
172
183
  - app/views/alchemy/essences/_essence_spree_product_editor.html.erb