37 lines
1.1 KiB
Text
37 lines
1.1 KiB
Text
# frozen_string_literal: true
|
|
|
|
wb.add_worksheet(name: 'all events') do |sheet|
|
|
bold_style = wb.styles.add_style(b: true)
|
|
wrap_text = wb.styles.add_style alignment: { wrap_text: true }
|
|
row = ['Event ID',
|
|
'Title',
|
|
'Abstract',
|
|
'Start time',
|
|
'Submitter',
|
|
'Speaker',
|
|
'Speaker Email',
|
|
'Event Type',
|
|
'Track',
|
|
'Difficulty Level',
|
|
'Room',
|
|
'State']
|
|
sheet.add_row row, style: bold_style
|
|
|
|
@events.each do |event|
|
|
row = []
|
|
row << event.id
|
|
row << event.title
|
|
row << event.abstract
|
|
row << (event.time.present? ? "#{event.time.strftime('%Y-%m-%d')} #{event.time.strftime('%I:%M%p')} " : '')
|
|
row << event.submitter.name
|
|
row << event.speaker_names
|
|
row << event.speaker_emails
|
|
row << event.event_type.title
|
|
row << (event.track.present? ? event.track.name : '')
|
|
row << (event.difficulty_level.present? ? event.difficulty_level.title : '')
|
|
row << (event.room.present? ? event.room.name : '')
|
|
row << event.state
|
|
sheet.add_row row, style: wrap_text
|
|
sheet.column_widths 10, 15, 35, 13, 18, 18, 28, 12, 15, 15, 15, 10
|
|
end
|
|
end
|