adds print of new proposals
This commit is contained in:
@@ -1,18 +1,23 @@
|
|||||||
class Management::ProposalsController < Management::BaseController
|
class Management::ProposalsController < Management::BaseController
|
||||||
skip_before_action :verify_manager
|
skip_before_action :verify_manager
|
||||||
|
|
||||||
include HasOrders
|
include HasOrders
|
||||||
include CommentableActions
|
include CommentableActions
|
||||||
|
|
||||||
before_action :set_proposal, only: :vote
|
before_action :set_proposal, only: :vote
|
||||||
before_action :parse_search_terms, only: :index
|
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
|
def vote
|
||||||
@proposal.register_vote(current_user, 'yes')
|
@proposal.register_vote(current_user, 'yes')
|
||||||
redirect_to management_proposals_url, notice: "Succesfully voted"
|
redirect_to management_proposals_url, notice: "Succesfully voted"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def print
|
||||||
|
@proposals = Proposal.all.page(params[:page]).for_render.send("sort_by_#{@current_order}")
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def set_proposal
|
def set_proposal
|
||||||
@@ -33,4 +38,9 @@ class Management::ProposalsController < Management::BaseController
|
|||||||
Proposal
|
Proposal
|
||||||
end
|
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
|
end
|
||||||
@@ -1,4 +1,23 @@
|
|||||||
<div class="supports">
|
<div class="supports">
|
||||||
|
|
||||||
|
<% 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) %> / <%= t("proposals.proposal.total_percent") %>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<span class="total-supports">
|
||||||
|
<%= t("proposals.proposal.supports", count: proposal.total_votes) %>
|
||||||
|
<span>
|
||||||
|
<abbr title="<%= t("proposals.proposal.census_percent") %>">
|
||||||
|
<%= t("proposals.proposal.supports_necessary") %>
|
||||||
|
</abbr>
|
||||||
|
</span>
|
||||||
|
</span>
|
||||||
|
<% else %>
|
||||||
|
|
||||||
<div class="in-favor">
|
<div class="in-favor">
|
||||||
<%= link_to vote_management_proposal_path(proposal, value: 'yes'),
|
<%= link_to vote_management_proposal_path(proposal, value: 'yes'),
|
||||||
class: "button button-support tiny radius expand",
|
class: "button button-support tiny radius expand",
|
||||||
@@ -6,4 +25,7 @@
|
|||||||
<%= t("proposals.proposal.support") %>
|
<%= t("proposals.proposal.support") %>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<% end %>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
33
app/views/management/proposals/print.html.erb
Normal file
33
app/views/management/proposals/print.html.erb
Normal 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>
|
||||||
@@ -173,6 +173,10 @@ Rails.application.routes.draw do
|
|||||||
member do
|
member do
|
||||||
post :vote
|
post :vote
|
||||||
end
|
end
|
||||||
|
|
||||||
|
collection do
|
||||||
|
get :print
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user