alchemy_cms 5.2.0.rc1 → 5.2.0
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.
Potentially problematic release.
This version of alchemy_cms might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/app/decorators/alchemy/element_editor.rb +25 -0
- data/app/helpers/alchemy/pages_helper.rb +3 -1
- data/app/views/alchemy/admin/elements/_element.html.erb +1 -1
- data/lib/alchemy/resource.rb +5 -3
- data/lib/alchemy/test_support.rb +11 -4
- data/lib/alchemy/test_support/factories.rb +2 -2
- data/lib/alchemy/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 80ac30c5b218ae66fdfc00afbaf2185829f52e94b32b76c4b6af8a19c5ec2ac8
|
4
|
+
data.tar.gz: 3da61ba5c95787cd3524ffad4e36f774b238fcf0456732a0cf69dac24dcbf0e7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 690da4b19ddbc96671c403bb616da433c37b35eeb0eee142de4f1ebe957f4f7ad9cd0da1e8e8e9e37cb773fbe1aec858166089673921b1ff463bc1dd0028bf91
|
7
|
+
data.tar.gz: 9f937fdb379c6df8c64976ec52ae4aef56bf597533e1d3ece0c987ef4604d91dfdb75eb246ce9aa68338d1a1814941f53d982093b378ab8089b3026f8997582b
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,8 @@
|
|
1
|
+
## 5.2.0 (2021-05-06)
|
2
|
+
|
3
|
+
- Backport #2049 to 5.2 [#2086](https://github.com/AlchemyCMS/alchemy_cms/pull/2086) ([rickythefox](https://github.com/rickythefox))
|
4
|
+
- hotfix and deprecate page_active? helper [#2073](https://github.com/AlchemyCMS/alchemy_cms/pull/2073) ([robinboening](https://github.com/robinboening))
|
5
|
+
|
1
6
|
## 5.2.0.rc1 (2021-02-17)
|
2
7
|
|
3
8
|
### Changes
|
@@ -8,6 +8,17 @@ module Alchemy
|
|
8
8
|
"alchemy/admin/elements/element"
|
9
9
|
end
|
10
10
|
|
11
|
+
# Returns content editor instances for defined contents
|
12
|
+
#
|
13
|
+
# Creates contents on demand if the content is not yet present on the element
|
14
|
+
#
|
15
|
+
# @return Array<Alchemy::ContentEditor>
|
16
|
+
def contents
|
17
|
+
element.definition.fetch(:contents, []).map do |content|
|
18
|
+
Alchemy::ContentEditor.new(find_or_create_content(content[:name]))
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
11
22
|
# CSS classes for the element editor partial.
|
12
23
|
def css_classes
|
13
24
|
[
|
@@ -78,5 +89,19 @@ module Alchemy
|
|
78
89
|
default: Alchemy.t(:element_deprecated))
|
79
90
|
end
|
80
91
|
end
|
92
|
+
|
93
|
+
private
|
94
|
+
|
95
|
+
def find_or_create_content(name)
|
96
|
+
find_content(name) || create_content(name)
|
97
|
+
end
|
98
|
+
|
99
|
+
def find_content(name)
|
100
|
+
element.contents.find { |content| content.name == name }
|
101
|
+
end
|
102
|
+
|
103
|
+
def create_content(name)
|
104
|
+
Alchemy::Content.create(element: element, name: name)
|
105
|
+
end
|
81
106
|
end
|
82
107
|
end
|
@@ -100,7 +100,9 @@ module Alchemy
|
|
100
100
|
|
101
101
|
# Returns true if page is in the active branch
|
102
102
|
def page_active?(page)
|
103
|
-
|
103
|
+
Alchemy::Deprecation.warn("page_active? helper is deprecated and will be removed from Alchemy 6.0")
|
104
|
+
|
105
|
+
@_page_ancestors ||= @page.self_and_ancestors.contentpages
|
104
106
|
@_page_ancestors.include?(page)
|
105
107
|
end
|
106
108
|
|
@@ -25,7 +25,7 @@
|
|
25
25
|
<div id="element_<%= element.id %>_errors" class="element_errors"></div>
|
26
26
|
|
27
27
|
<div id="element_<%= element.id %>_content" class="element-content-editors">
|
28
|
-
<%= render element.contents
|
28
|
+
<%= render element.contents %>
|
29
29
|
</div>
|
30
30
|
|
31
31
|
<% if element.taggable? %>
|
data/lib/alchemy/resource.rb
CHANGED
@@ -132,7 +132,9 @@ module Alchemy
|
|
132
132
|
end
|
133
133
|
|
134
134
|
def namespaced_resource_name
|
135
|
-
@_namespaced_resource_name ||=
|
135
|
+
@_namespaced_resource_name ||= begin
|
136
|
+
namespaced_resources_name.to_s.singularize
|
137
|
+
end.to_sym # Rails >= 6.0.3.7 needs symbols in polymorphic routes
|
136
138
|
end
|
137
139
|
|
138
140
|
def namespaced_resources_name
|
@@ -140,13 +142,13 @@ module Alchemy
|
|
140
142
|
resource_name_array = resource_array.dup
|
141
143
|
resource_name_array.delete(engine_name) if in_engine?
|
142
144
|
resource_name_array.join("_")
|
143
|
-
end
|
145
|
+
end.to_sym # Rails >= 6.0.3.7 needs symbols in polymorphic routes
|
144
146
|
end
|
145
147
|
|
146
148
|
def namespace_for_scope
|
147
149
|
namespace_array = namespace_diff
|
148
150
|
namespace_array.delete(engine_name) if in_engine?
|
149
|
-
namespace_array
|
151
|
+
namespace_array.map(&:to_sym) # Rails >= 6.0.3.7 needs symbols in polymorphic routes
|
150
152
|
end
|
151
153
|
|
152
154
|
# Returns an array of underscored association names
|
data/lib/alchemy/test_support.rb
CHANGED
@@ -2,10 +2,17 @@
|
|
2
2
|
|
3
3
|
module Alchemy
|
4
4
|
module TestSupport
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
5
|
+
class << self
|
6
|
+
def factory_paths
|
7
|
+
Dir[
|
8
|
+
::Alchemy::Engine.root.join("lib", "alchemy", "test_support", "factories", "*_factory.rb")
|
9
|
+
].map { |path| path.sub(/.rb\z/, "") }
|
10
|
+
end
|
11
|
+
deprecate factory_paths: :factories_path, deprecator: Alchemy::Deprecation
|
12
|
+
|
13
|
+
def factories_path
|
14
|
+
::Alchemy::Engine.root.join("lib", "alchemy", "test_support", "factories")
|
15
|
+
end
|
9
16
|
end
|
10
17
|
end
|
11
18
|
end
|
@@ -7,8 +7,8 @@ Alchemy::Deprecation.warn <<~MSG
|
|
7
7
|
|
8
8
|
require 'alchemy/test_support'
|
9
9
|
|
10
|
-
FactoryBot.definition_file_paths.
|
11
|
-
FactoryBot.
|
10
|
+
FactoryBot.definition_file_paths.append(Alchemy::TestSupport.factories_path)
|
11
|
+
FactoryBot.find_definitions
|
12
12
|
MSG
|
13
13
|
|
14
14
|
Dir["#{File.dirname(__FILE__)}/factories/*.rb"].sort.each do |file|
|
data/lib/alchemy/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: alchemy_cms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.2.0
|
4
|
+
version: 5.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thomas von Deyen
|
@@ -13,7 +13,7 @@ authors:
|
|
13
13
|
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date: 2021-
|
16
|
+
date: 2021-05-06 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: active_model_serializers
|
@@ -1275,9 +1275,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
1275
1275
|
version: 2.3.0
|
1276
1276
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
1277
1277
|
requirements:
|
1278
|
-
- - "
|
1278
|
+
- - ">="
|
1279
1279
|
- !ruby/object:Gem::Version
|
1280
|
-
version:
|
1280
|
+
version: '0'
|
1281
1281
|
requirements:
|
1282
1282
|
- ImageMagick (libmagick), v6.6 or greater.
|
1283
1283
|
rubygems_version: 3.1.4
|