end
case object.class.name
when 'Array'
- object.map {|o| format_object(o, html)}.join(', ').html_safe
+ formatted_objects = object.map {|o| format_object(o, html)}
+ html ? safe_join(formatted_objects, ', ') : formatted_objects.join(', ')
when 'Time'
format_time(object)
when 'Date'
def column_content(column, issue)
value = column.value_object(issue)
if value.is_a?(Array)
- value.collect {|v| column_value(column, issue, v)}.compact.join(', ').html_safe
+ values = value.collect {|v| column_value(column, issue, v)}.compact
+ safe_join(values, ', ')
else
column_value(column, issue, value)
end
<% entries.each do |entry| -%>
<tr class="time-entry <%= cycle("odd", "even") %> hascontextmenu">
<td class="checkbox hide-when-print"><%= check_box_tag("ids[]", entry.id, false, :id => nil) %></td>
- <%= raw @query.inline_columns.map {|column| "<td class=\"#{column.css_classes}\">#{column_content(column, entry)}</td>"}.join %>
+ <% @query.inline_columns.each do |column| %>
+ <%= content_tag('td', column_content(column, entry), :class => column.css_classes) %>
+ <% end %>
<td class="buttons">
<% if entry.editable_by?(User.current) -%>
<%= link_to l(:button_edit), edit_time_entry_path(entry),