lib/scrivito/attribute_content.rb in scrivito_sdk-0.65.1 vs lib/scrivito/attribute_content.rb in scrivito_sdk-0.65.2
- old
+ new
@@ -193,14 +193,19 @@
nil
end
def referenced_widgets
widgets = []
- attribute_definitions.each do |attribute_definition|
- if attribute_definition.widgetlist?
- widgets += read_attribute(attribute_definition.name)
+
+ data_from_cms.attribute_names.each do |attr_name|
+ type = data_from_cms.type_of(attr_name)
+ if type == "widgetlist" || type == "widget"
+ value = data_from_cms.value_of(attr_name) || []
+ widgets_in_value = value.map { |widget_id| widget_from_pool(widget_id) }
+ widgets += widgets_in_value
end
end
+
widgets
end
def contained_widgets
referenced = referenced_widgets