osem-fcy/app/views/admin/events/index.xlsx.axlsx

41 lines
1.2 KiB
Text

wb = xlsx_package.workbook
wb.add_worksheet(name: 'events') do |sheet|
bold_style = wb.styles.add_style(b: true)
row = ['Event ID', 'Title', 'Abstract', 'Start time', 'Submitter', 'Speaker', '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
row << event.submitter.name
row << event.speaker_names
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
end
end
wb.add_worksheet(name: 'comments') do |sheet|
bold_style = wb.styles.add_style(b: true)
row = ['Comment ID', 'Event Title', 'Body', 'User Name']
sheet.add_row row, style: bold_style
@events.each do |event|
event.root_comments.each do |comment|
row = []
row << comment.id
row << event.title
row << comment.body
row << comment.user.name
sheet.add_row row
end
end
end