From f721d987bd92999335a2a5bcd940c06b2302aa4a Mon Sep 17 00:00:00 2001 From: Marius BALTEANU Date: Sun, 3 Feb 2019 21:09:03 +0000 Subject: [PATCH 2/2] Refactor custom field value tag for custom fields with full text formatting enabled --- app/helpers/custom_fields_helper.rb | 11 +++++++++++ app/helpers/issues_helper.rb | 16 ++++------------ 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/app/helpers/custom_fields_helper.rb b/app/helpers/custom_fields_helper.rb index e0ca452..54573c7 100644 --- a/app/helpers/custom_fields_helper.rb +++ b/app/helpers/custom_fields_helper.rb @@ -129,6 +129,17 @@ module CustomFieldsHelper :class => "#{custom_field.field_format}_cf" end + # Returns custom field value tag + def custom_field_value_tag(value) + attr_value = show_value(value) + + if !attr_value.blank? && value.custom_field.full_text_formatting? + content_tag('div', attr_value, :class => 'wiki') + else + attr_value + end + end + # Return a string used to display a custom value def show_value(custom_value, html=true) format_object(custom_value, html) diff --git a/app/helpers/issues_helper.rb b/app/helpers/issues_helper.rb index 14d43f9..6bd8e29 100644 --- a/app/helpers/issues_helper.rb +++ b/app/helpers/issues_helper.rb @@ -244,12 +244,8 @@ module IssuesHelper issue_fields_rows do |rows| values.each_with_index do |value, i| css = "cf_#{value.custom_field.id}" - attr_value = show_value(value) - if value.custom_field.text_formatting == 'full' - attr_value = content_tag('div', attr_value, class: 'wiki') - end m = (i < half ? :left : :right) - rows.send m, custom_field_name_tag(value.custom_field), attr_value, :class => css + rows.send m, custom_field_name_tag(value.custom_field), custom_field_value_tag(value), :class => css end end end @@ -260,17 +256,13 @@ module IssuesHelper s = ''.html_safe values.each_with_index do |value, i| - attr_value = show_value(value) - next if attr_value.blank? - - if value.custom_field.text_formatting == 'full' - attr_value = content_tag('div', attr_value, class: 'wiki') - end + attr_value_tag = custom_field_value_tag(value) + next if attr_value_tag.blank? content = content_tag('hr') + content_tag('p', content_tag('strong', custom_field_name_tag(value.custom_field) )) + - content_tag('div', attr_value, class: 'value') + content_tag('div', attr_value_tag, class: 'value') s << content_tag('div', content, class: "cf_#{value.custom_field.id} attribute") end s -- 2.1.4