spree_core 4.6.1 → 4.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 25515bda9382eb9a7fc0e07ac95fea0b0094fd7de31af286e0eed57d5feb205f
|
4
|
+
data.tar.gz: f7aba240ca2172c68b41e7da1c0e4864fcadb1ec6a632c919cca59fa7e129076
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2f829f28024c84e1b8b7dba2868fedeffc0f105b237ef3ad946ad64ec9a2c0f789c8f3ae367f42203a3d3c53be08b598df0a4cd3d58aa45479bf4e755091f27c
|
7
|
+
data.tar.gz: afefb4b5952e8187f5dc605202fcc578c13bdd9d7f43d411c0763471c32ddb622aaf6f62c2160b1e835d1f974452d54812ebcabd3a072da0ff31af1a698ab3a8
|
data/app/models/spree/product.rb
CHANGED
@@ -42,9 +42,25 @@ module Spree
|
|
42
42
|
translates(*TRANSLATABLE_FIELDS)
|
43
43
|
|
44
44
|
self::Translation.class_eval do
|
45
|
+
before_save :set_slug
|
45
46
|
acts_as_paranoid
|
46
47
|
# deleted translation values also need to be accessible for index views listing deleted resources
|
47
48
|
default_scope { unscope(where: :deleted_at) }
|
49
|
+
def set_slug
|
50
|
+
self.slug = generate_slug
|
51
|
+
end
|
52
|
+
|
53
|
+
private
|
54
|
+
|
55
|
+
def generate_slug
|
56
|
+
if name.blank? && slug.blank?
|
57
|
+
translated_model.name.to_url
|
58
|
+
elsif slug.blank?
|
59
|
+
name.to_url
|
60
|
+
else
|
61
|
+
slug.to_url
|
62
|
+
end
|
63
|
+
end
|
48
64
|
end
|
49
65
|
|
50
66
|
friendly_id :slug_candidates, use: [:history, :mobility]
|
data/app/models/spree/taxon.rb
CHANGED
@@ -62,19 +62,40 @@ module Spree
|
|
62
62
|
|
63
63
|
self::Translation.class_eval do
|
64
64
|
alias_attribute :slug, :permalink
|
65
|
-
|
66
|
-
before_create :set_permalink
|
65
|
+
before_save :set_permalink
|
67
66
|
|
68
67
|
def set_permalink
|
69
|
-
|
70
|
-
|
68
|
+
self.permalink = generate_slug
|
69
|
+
end
|
70
|
+
|
71
|
+
private
|
71
72
|
|
73
|
+
def generate_slug
|
72
74
|
if parent.present?
|
73
|
-
|
75
|
+
generate_permalink_including_parent
|
76
|
+
elsif permalink.blank?
|
77
|
+
name_with_fallback.to_url
|
74
78
|
else
|
75
|
-
|
79
|
+
permalink.to_url
|
76
80
|
end
|
77
81
|
end
|
82
|
+
|
83
|
+
def generate_permalink_including_parent
|
84
|
+
[parent_permalink_with_fallback, (permalink.blank? ? name_with_fallback.to_url : permalink.split('/').last.to_url)].join('/')
|
85
|
+
end
|
86
|
+
|
87
|
+
def name_with_fallback
|
88
|
+
name.blank? ? translated_model.name : name
|
89
|
+
end
|
90
|
+
|
91
|
+
def parent
|
92
|
+
translated_model.parent
|
93
|
+
end
|
94
|
+
|
95
|
+
def parent_permalink_with_fallback
|
96
|
+
localized_parent = parent.translations.find_by(locale: locale)
|
97
|
+
localized_parent.present? ? localized_parent.permalink : parent.permalink
|
98
|
+
end
|
78
99
|
end
|
79
100
|
|
80
101
|
# indicate which filters should be used for a taxon
|
@@ -26,7 +26,10 @@ module Spree
|
|
26
26
|
|
27
27
|
def duplicate_product
|
28
28
|
product.dup.tap do |new_product|
|
29
|
-
|
29
|
+
new_product.translations.each do |t|
|
30
|
+
t.name = "COPY OF #{t.name}"
|
31
|
+
t.slug = nil
|
32
|
+
end
|
30
33
|
new_product.taxons = product.taxons
|
31
34
|
new_product.stores = product.stores
|
32
35
|
new_product.created_at = nil
|
data/lib/spree/core/version.rb
CHANGED
@@ -13,6 +13,8 @@ FactoryBot.define do
|
|
13
13
|
twitter { 'spreecommerce' }
|
14
14
|
instagram { 'spreecommerce' }
|
15
15
|
meta_description { 'Sample store description.' }
|
16
|
+
digital_asset_authorized_clicks { 5 }
|
17
|
+
digital_asset_authorized_days { 7 }
|
16
18
|
|
17
19
|
trait :with_favicon do
|
18
20
|
transient do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spree_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.6.
|
4
|
+
version: 4.6.2
|
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: 2023-
|
12
|
+
date: 2023-09-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: actionpack
|
@@ -1079,9 +1079,9 @@ licenses:
|
|
1079
1079
|
- BSD-3-Clause
|
1080
1080
|
metadata:
|
1081
1081
|
bug_tracker_uri: https://github.com/spree/spree/issues
|
1082
|
-
changelog_uri: https://github.com/spree/spree/releases/tag/v4.6.
|
1082
|
+
changelog_uri: https://github.com/spree/spree/releases/tag/v4.6.2
|
1083
1083
|
documentation_uri: https://dev-docs.spreecommerce.org/
|
1084
|
-
source_code_uri: https://github.com/spree/spree/tree/v4.6.
|
1084
|
+
source_code_uri: https://github.com/spree/spree/tree/v4.6.2
|
1085
1085
|
post_install_message:
|
1086
1086
|
rdoc_options: []
|
1087
1087
|
require_paths:
|