class DiningTable::Presenters::SpreadsheetPresenter
Public Instance Methods
render_header()
click to toggle source
# File lib/dining-table/presenters/spreadsheet_presenter.rb, line 16 def render_header add_row( header_strings ) end
render_row( object )
click to toggle source
# File lib/dining-table/presenters/spreadsheet_presenter.rb, line 7 def render_row( object ) values = columns.map do |column| value = column.value( object ) value = clean( value ) if !!options[:clean] value end add_row( values ) end
Private Instance Methods
add_row( row )
click to toggle source
# File lib/dining-table/presenters/spreadsheet_presenter.rb, line 37 def add_row( row ) raise NotImplementedError end
clean(string)
click to toggle source
# File lib/dining-table/presenters/spreadsheet_presenter.rb, line 41 def clean(string) replacements = [['—', '--'], ['–', '-'], [' ', ' '] ] base = view_context.strip_tags(string) replacements.each do |pattern, replacement| base.gsub!(pattern, replacement) end base end
header_strings()
click to toggle source
# File lib/dining-table/presenters/spreadsheet_presenter.rb, line 29 def header_strings columns.map(&:header) end