adds print of new proposals

This commit is contained in:
rgarcia
2015-10-06 14:27:34 +02:00
parent 0acdf5722b
commit 015e57ddad
4 changed files with 77 additions and 8 deletions

View File

@@ -1,18 +1,23 @@
class Management::ProposalsController < Management::BaseController
skip_before_action :verify_manager
include HasOrders
include CommentableActions
before_action :set_proposal, only: :vote
before_action :parse_search_terms, only: :index
has_orders %w{hot_score confidence_score created_at most_commented random}, only: :index
has_orders %w{hot_score confidence_score created_at most_commented random}, only: [:index, :print]
def vote
@proposal.register_vote(current_user, 'yes')
redirect_to management_proposals_url, notice: "Succesfully voted"
end
def print
@proposals = Proposal.all.page(params[:page]).for_render.send("sort_by_#{@current_order}")
end
private
def set_proposal
@@ -33,4 +38,9 @@ class Management::ProposalsController < Management::BaseController
Proposal
end
#Duplicated in application_controller. Move to a concenrn.
def set_proposal_votes(proposals)
@proposal_votes = current_user ? current_user.proposal_votes(proposals) : {}
end
end

View File

@@ -1,9 +1,31 @@
<div class="supports">
<div class="in-favor">
<%= link_to vote_management_proposal_path(proposal, value: 'yes'),
class: "button button-support tiny radius expand",
title: t('proposals.proposal.support_title'), method: "post" do %>
<%= t("proposals.proposal.support") %>
<% end %>
</div>
<% if action_name == 'print' %>
<div class="progress small-12 round">
<span class="meter" style="width: <%= progress_bar_percentage(proposal) %>%;"></span>
<span class="percentage">
<%= supports_percentage(proposal) %>&nbsp;/&nbsp;<%= t("proposals.proposal.total_percent") %>
</span>
</div>
<span class="total-supports">
<%= t("proposals.proposal.supports", count: proposal.total_votes) %>&nbsp;
<span>
<abbr title="<%= t("proposals.proposal.census_percent") %>">
<%= t("proposals.proposal.supports_necessary") %>
</abbr>
</span>
</span>
<% else %>
<div class="in-favor">
<%= link_to vote_management_proposal_path(proposal, value: 'yes'),
class: "button button-support tiny radius expand",
title: t('proposals.proposal.support_title'), method: "post" do %>
<%= t("proposals.proposal.support") %>
<% end %>
</div>
<% end %>
</div>

View File

@@ -0,0 +1,33 @@
<section id="printme" role="main">
<a onclick="print();" class="button warning radius"><%= t("manage.create_user.print") %></a>
<div class="wrap row">
<div id="proposals" class="proposals-list small-12 medium-9 column">
<div class="filters">
<div class="small-12 medium-7 left">
<div class="small-12 inline-block">
<h2 class="inline-block">
<%= t("proposals.index.select_order_long") %>
</h2>
<%= render 'shared/order_selector', i18n_namespace: "proposals.index" %>
</div>
</div>
</div>
<%= render @proposals %>
<%= paginate @proposals %>
</div>
</div>
</section>
<script type="text/javascript">
function print(){
var object=document.getElementById('printme');
var browser=window.open('','_blank');
browser.document.write(object.innerHTML);
browser.document.close();
browser.print();
browser.close();
}
</script>

View File

@@ -173,6 +173,10 @@ Rails.application.routes.draw do
member do
post :vote
end
collection do
get :print
end
end
end