diff --git a/app/models/metadata_document_date.rb b/app/models/metadata_document_date.rb index 036877a..39e6873 100644 --- a/app/models/metadata_document_date.rb +++ b/app/models/metadata_document_date.rb @@ -7,10 +7,14 @@ class MetadataDocumentDate < MetadataTemplate Date.today.to_time end + def value_from_document + document.date + end + # El valor puede ser un Date, Time o una String en el formato # "yyyy-mm-dd" def value - return (self[:value] = document.date || default_value) if self[:value].nil? + return (self[:value] = value_from_document || default_value) if self[:value].nil? self[:value] = Date.iso8601(self[:value]).to_time if self[:value].is_a? String diff --git a/app/models/metadata_lang.rb b/app/models/metadata_lang.rb index da13d90..93ef87c 100644 --- a/app/models/metadata_lang.rb +++ b/app/models/metadata_lang.rb @@ -6,8 +6,12 @@ class MetadataLang < MetadataTemplate super || I18n.locale end + def value_from_document + document.collection.label + end + def value - self[:value] ||= document.collection.label || default_value + self[:value] ||= value_from_document || default_value end def values diff --git a/app/models/metadata_path.rb b/app/models/metadata_path.rb index 6dede4b..3c93cca 100644 --- a/app/models/metadata_path.rb +++ b/app/models/metadata_path.rb @@ -7,8 +7,12 @@ class MetadataPath < MetadataTemplate File.join(site.path, "_#{lang}", "#{date}-#{slug}#{ext}") end + # El valor no vuelve desde el documento + def value_from_document + document.path + end + def value - @value_was ||= default_value self[:value] = default_value end alias absolute value