spree_frontend 4.2.0.rc3 → 4.2.0.rc4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/controllers/spree/currency_controller.rb +1 -1
- data/app/controllers/spree/home_controller.rb +5 -1
- data/app/controllers/spree/products_controller.rb +5 -2
- data/app/controllers/spree/store_controller.rb +0 -4
- data/app/controllers/spree/taxons_controller.rb +3 -2
- data/app/helpers/spree/cache_helper.rb +7 -0
- data/app/models/spree/frontend_configuration.rb +1 -0
- data/app/views/spree/shared/_change_store.html.erb +2 -2
- data/app/views/spree/shared/carousel/_single.html.erb +1 -1
- metadata +9 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1477557578e6d8ef0fe52f5d0d8e96d45ede1291ef6d5e635d397ab3ba2b1d64
|
4
|
+
data.tar.gz: 4bf49f127a3c63fbf42d02e628157297029568a11eed608a2da64a6b7c6151cc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b6c9a6e1456772e5a1a189e759e1503eb4a43c93c55546dc7acee0cfc24e0781dac0882220df9ce0b1a6d123e3817822838325e9da9873a9c168aa4a8cdba9bb
|
7
|
+
data.tar.gz: 9c9fe56b7f1a9c33241eecca1367d279a2a2f4207290a4922244b0eeaf9b04ee734a1b76f92625314d62ec63d52f0406e77dd4a12ac6a67e5864ee43de3a0ec6
|
@@ -4,7 +4,7 @@ module Spree
|
|
4
4
|
@currency = supported_currencies.find { |currency| currency.iso_code == params[:currency] }
|
5
5
|
# Make sure that we update the current order, so the currency change is reflected.
|
6
6
|
current_order&.update(currency: @currency.iso_code)
|
7
|
-
session[:currency] = params[:currency] if Spree::Config[:
|
7
|
+
session[:currency] = params[:currency] if Spree::Config[:show_store_selector]
|
8
8
|
respond_to do |format|
|
9
9
|
format.json { render json: !@currency.nil? }
|
10
10
|
format.html do
|
@@ -1,9 +1,13 @@
|
|
1
1
|
module Spree
|
2
2
|
class HomeController < Spree::StoreController
|
3
|
+
include Spree::CacheHelper
|
4
|
+
|
3
5
|
respond_to :html
|
4
6
|
|
5
7
|
def index
|
6
|
-
|
8
|
+
if http_cache_enabled?
|
9
|
+
fresh_when etag: store_etag, last_modified: store_last_modified, public: true
|
10
|
+
end
|
7
11
|
end
|
8
12
|
end
|
9
13
|
end
|
@@ -2,6 +2,7 @@ module Spree
|
|
2
2
|
class ProductsController < Spree::StoreController
|
3
3
|
include Spree::ProductsHelper
|
4
4
|
include Spree::FrontendHelper
|
5
|
+
include Spree::CacheHelper
|
5
6
|
|
6
7
|
before_action :load_product, only: [:show, :related]
|
7
8
|
before_action :load_taxon, only: :index
|
@@ -12,7 +13,9 @@ module Spree
|
|
12
13
|
@searcher = build_searcher(params.merge(include_images: true, current_store_id: current_store.id))
|
13
14
|
@products = @searcher.retrieve_products
|
14
15
|
|
15
|
-
|
16
|
+
if http_cache_enabled?
|
17
|
+
fresh_when etag: etag_index, last_modified: last_modified_index, public: true
|
18
|
+
end
|
16
19
|
end
|
17
20
|
|
18
21
|
def show
|
@@ -20,7 +23,7 @@ module Spree
|
|
20
23
|
|
21
24
|
@taxon = params[:taxon_id].present? ? Spree::Taxon.find(params[:taxon_id]) : @product.taxons.first
|
22
25
|
|
23
|
-
if stale?(etag: etag_show, last_modified: last_modified_show, public: true)
|
26
|
+
if !http_cache_enabled? || stale?(etag: etag_show, last_modified: last_modified_show, public: true)
|
24
27
|
@product_summary = Spree::ProductSummaryPresenter.new(@product).call
|
25
28
|
@product_properties = @product.product_properties.includes(:property)
|
26
29
|
@product_price = @product.price_in(current_currency).amount
|
@@ -1,6 +1,7 @@
|
|
1
1
|
module Spree
|
2
2
|
class TaxonsController < Spree::StoreController
|
3
3
|
include Spree::FrontendHelper
|
4
|
+
include Spree::CacheHelper
|
4
5
|
helper 'spree/products'
|
5
6
|
|
6
7
|
before_action :load_taxon
|
@@ -8,13 +9,13 @@ module Spree
|
|
8
9
|
respond_to :html
|
9
10
|
|
10
11
|
def show
|
11
|
-
if stale?(etag: etag, last_modified: last_modified, public: true)
|
12
|
+
if !http_cache_enabled? || stale?(etag: etag, last_modified: last_modified, public: true)
|
12
13
|
load_products
|
13
14
|
end
|
14
15
|
end
|
15
16
|
|
16
17
|
def product_carousel
|
17
|
-
if stale?(etag: carousel_etag, last_modified: last_modified, public: true)
|
18
|
+
if !http_cache_enabled? || stale?(etag: carousel_etag, last_modified: last_modified, public: true)
|
18
19
|
load_products
|
19
20
|
if @products.reload.any?
|
20
21
|
render template: 'spree/taxons/product_carousel', layout: false
|
@@ -1,6 +1,7 @@
|
|
1
1
|
module Spree
|
2
2
|
class FrontendConfiguration < Preferences::Configuration
|
3
3
|
preference :coupon_codes_enabled, :boolean, default: true # Determines if we show coupon code form at cart and checkout
|
4
|
+
preference :http_cache_enabled, :boolean, default: true
|
4
5
|
preference :locale, :string, default: Rails.application.config.i18n.default_locale
|
5
6
|
preference :products_filters, :array, default: %w(keywords price sort_by)
|
6
7
|
preference :additional_filters_partials, :array, default: %w()
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<% if Spree::Config.
|
1
|
+
<% if Spree::Config.show_store_selector && stores.size > 1 %>
|
2
2
|
<li class="d-none d-xl-block change-store">
|
3
3
|
<div class="dropdown navbar-right-dropdown">
|
4
4
|
<button id="stores-button" type="button" data-toggle="dropdown" class="navbar-right-dropdown-toggle" aria-label="<%= Spree.t('nav_bar.change_country')%>">
|
@@ -16,7 +16,7 @@
|
|
16
16
|
<% stores.each do |store| %>
|
17
17
|
<div class="pl-3 d-flex justify-content-between align-items-center <%= 'active' if store.id == current_store.id %>">
|
18
18
|
<span class="flag-icon flag-icon-<%= store_country_iso(store) %>"></span>
|
19
|
-
<%= link_to "#{store.
|
19
|
+
<%= link_to "#{store.name} (#{store_currency_symbol(store)})", store.formatted_url, class: 'dropdown-item text-uppercase' %>
|
20
20
|
</div>
|
21
21
|
<% end %>
|
22
22
|
</div>
|
@@ -57,7 +57,7 @@
|
|
57
57
|
width: zoomed ? 650 : 475,
|
58
58
|
height: zoomed ? 870 : 594
|
59
59
|
} %>
|
60
|
-
<%= imageIndex.zero? ? image_tag(image_attrs.delete(:src), image_attrs) : lazy_image(image_attrs) %>
|
60
|
+
<%= imageIndex.zero? ? image_tag(image_attrs.delete(:src), image_attrs) : lazy_image(**image_attrs) %>
|
61
61
|
</div>
|
62
62
|
</div>
|
63
63
|
<% end %>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spree_frontend
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.2.0.
|
4
|
+
version: 4.2.0.rc4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sean Schofield
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2021-01-
|
12
|
+
date: 2021-01-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: spree_api
|
@@ -17,28 +17,28 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - '='
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: 4.2.0.
|
20
|
+
version: 4.2.0.rc4
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - '='
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: 4.2.0.
|
27
|
+
version: 4.2.0.rc4
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: spree_core
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
32
|
- - '='
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version: 4.2.0.
|
34
|
+
version: 4.2.0.rc4
|
35
35
|
type: :runtime
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
39
|
- - '='
|
40
40
|
- !ruby/object:Gem::Version
|
41
|
-
version: 4.2.0.
|
41
|
+
version: 4.2.0.rc4
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
43
|
name: bootstrap
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
@@ -648,6 +648,7 @@ files:
|
|
648
648
|
- app/controllers/spree/store_controller.rb
|
649
649
|
- app/controllers/spree/taxons_controller.rb
|
650
650
|
- app/helpers/spree/addresses_helper.rb
|
651
|
+
- app/helpers/spree/cache_helper.rb
|
651
652
|
- app/helpers/spree/frontend_helper.rb
|
652
653
|
- app/helpers/spree/navigation_helper.rb
|
653
654
|
- app/helpers/spree/orders_helper.rb
|
@@ -783,9 +784,9 @@ licenses:
|
|
783
784
|
- BSD-3-Clause
|
784
785
|
metadata:
|
785
786
|
bug_tracker_uri: https://github.com/spree/spree/issues
|
786
|
-
changelog_uri: https://github.com/spree/spree/releases/tag/v4.2.0.
|
787
|
+
changelog_uri: https://github.com/spree/spree/releases/tag/v4.2.0.rc4
|
787
788
|
documentation_uri: https://guides.spreecommerce.org/
|
788
|
-
source_code_uri: https://github.com/spree/spree/tree/v4.2.0.
|
789
|
+
source_code_uri: https://github.com/spree/spree/tree/v4.2.0.rc4
|
789
790
|
post_install_message:
|
790
791
|
rdoc_options: []
|
791
792
|
require_paths:
|