Add link to download summary in XLSX format again
It was removed in commit 128a8164 alongside everything related to the
legislation process summary.
Co-Authored-By: taitus <sebastia.roig@gmail.com>
This commit is contained in:
@@ -1086,4 +1086,11 @@
|
||||
padding: rem-calc(12);
|
||||
}
|
||||
}
|
||||
|
||||
.download-button {
|
||||
margin-bottom: 0;
|
||||
margin-left: 50%;
|
||||
margin-top: $line-height;
|
||||
transform: translateX(-50%);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -101,6 +101,11 @@ class Legislation::ProcessesController < Legislation::BaseController
|
||||
@phase = :summary
|
||||
@proposals = @process.proposals.selected
|
||||
@comments = @process.draft_versions.published.last&.best_comments || Comment.none
|
||||
|
||||
respond_to do |format|
|
||||
format.html
|
||||
format.xlsx { render xlsx: "summary", filename: "summary-#{Date.current}.xlsx" }
|
||||
end
|
||||
end
|
||||
|
||||
def proposals
|
||||
|
||||
@@ -6,6 +6,10 @@
|
||||
|
||||
<% if @process.debate_phase.enabled? || @process.proposals_phase.enabled? || @process.allegations_phase.enabled? %>
|
||||
<section class="process-summary">
|
||||
<%= link_to t("legislation.summary.download"),
|
||||
summary_legislation_process_path(@process, format: :xlsx),
|
||||
class: "button hollow download-button" %>
|
||||
|
||||
<% if @process.debate_phase.enabled? %>
|
||||
<%= render "summary_debate", questions: @process.questions %>
|
||||
<% end %>
|
||||
|
||||
50
app/views/legislation/processes/summary.xlsx.axlsx
Normal file
50
app/views/legislation/processes/summary.xlsx.axlsx
Normal file
@@ -0,0 +1,50 @@
|
||||
xlsx_package.workbook.add_worksheet(name: "Summary") do |sheet|
|
||||
|
||||
styles = xlsx_package.workbook.styles
|
||||
title = styles.add_style(b:true)
|
||||
link = styles.add_style(fg_color: "0000FF", u: true)
|
||||
|
||||
if @process.debate_phase.enabled? && @process.questions.any?
|
||||
sheet.add_row [t("legislation.summary.debate_phase"), t("legislation.summary.debates", count: @process.questions.count)], style: title
|
||||
@process.questions.each do |question|
|
||||
sheet.add_row [question.title, t("legislation.summary.comments", count: question.comments.count)], style: link
|
||||
sheet.add_hyperlink location: legislation_process_question_url(question.process, question), ref: sheet.rows.last.cells.first
|
||||
sheet.add_hyperlink location: polymorphic_url(question, anchor: "comments"), ref: sheet.rows.last.cells.last
|
||||
sheet.add_row [t("legislation.summary.most_voted_comments")] if question.best_comments.any?
|
||||
question.best_comments.each do |comment|
|
||||
sheet.add_row [comment.body, t("legislation.summary.votes", count: comment.votes_score)]
|
||||
sheet.add_hyperlink location: comment_url(comment), ref: sheet.rows.last.cells.first
|
||||
sheet.rows.last.cells.first.style = link
|
||||
end
|
||||
sheet.add_row ["", ""]
|
||||
end
|
||||
end
|
||||
|
||||
if @process.proposals_phase.enabled? && @proposals.any?
|
||||
sheet.add_row [t("legislation.summary.proposals_phase"), t("legislation.summary.proposals", count: @proposals.count)], style: title
|
||||
@proposals.sort_by_supports.each do |proposal|
|
||||
sheet.add_row [proposal.title, t("legislation.summary.votes", count: proposal.votes_score)]
|
||||
sheet.add_hyperlink location: legislation_process_proposal_url(proposal.legislation_process_id, proposal), ref: sheet.rows.last.cells.first
|
||||
sheet.rows.last.cells.first.style = link
|
||||
end
|
||||
sheet.add_row ["", ""]
|
||||
end
|
||||
|
||||
if @process.allegations_phase.enabled? && @comments.any?
|
||||
sheet.add_row [t("legislation.summary.allegations_phase"),
|
||||
t("legislation.summary.top_comments", count: @comments.count)], style: title
|
||||
@comments.group_by(&:commentable).each do |annotation, annotation_comments|
|
||||
sheet.add_row [t("legislation.annotations.index.comments_about")]
|
||||
sheet.add_row [annotation.quote, t("legislation.summary.comments", count: annotation.comments.count)]
|
||||
sheet.add_hyperlink location: polymorphic_url(annotation, anchor: "comments"), ref: sheet.rows.last.cells.last
|
||||
sheet.rows.last.cells.last.style = link
|
||||
|
||||
annotation_comments.each do |comment|
|
||||
sheet.add_row [comment.body, t("legislation.summary.votes", count: comment.votes_score)]
|
||||
sheet.add_hyperlink location: comment_url(comment), ref: sheet.rows.last.cells.first
|
||||
sheet.rows.last.cells.first.style = link
|
||||
end
|
||||
sheet.add_row ["", ""]
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user