23 lines
614 B
Ruby
23 lines
614 B
Ruby
module DescriptionListHelper
|
|
def description_list_pair(term, definition, append: nil)
|
|
tags = [
|
|
content_tag(:dt, "#{term}#{append}"),
|
|
content_tag(:dd, definition),
|
|
]
|
|
safe_join(tags)
|
|
end
|
|
|
|
def description_list_pair_for(record, attribute, append: nil, custom_label: nil)
|
|
term = custom_label.nil? ? translation_for(record, attribute) : custom_label
|
|
definition = record.send(attribute)
|
|
|
|
description_list_pair(term, definition, append: append)
|
|
end
|
|
|
|
private
|
|
|
|
def translation_for(record, attribute)
|
|
record.class.human_attribute_name(attribute).titleize
|
|
end
|
|
end
|