21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
# File 'lib/data-table/column.rb', line 21
def render_cell(cell_data, row = nil, row_index = 0, col_index = 0)
@data_type ||= type(cell_data)
html = []
html << if @renderer && row
case @renderer.arity
when 1 then @renderer.call(cell_data).to_s
when 2 then @renderer.call(cell_data, row).to_s
when 3 then @renderer.call(cell_data, row, row_index).to_s
when 4 then @renderer.call(cell_data, row, row_index, self).to_s
when 5 then @renderer.call(cell_data, row, row_index, self, col_index).to_s
end
else
cell_data.to_s
end
html << '</td>'
"<td class='#{css_class_names}' #{custom_attributes}>" + html.join
end
|