app/helpers/proposals_helper.rb
module ProposalsHelper
def progress_bar_percentage(proposal)
case proposal.cached_votes_up
when 0 then 0
when 1..Proposal.votes_needed_for_success
(proposal.total_votes.to_f * 100 / Proposal.votes_needed_for_success).floor
else 100
end
end
def supports_percentage(proposal)
percentage = (proposal.total_votes.to_f * 100 / Proposal.votes_needed_for_success)
case percentage
when 0 then "0%"
when 0..0.1 then "0.1%"
when 0.1..100 then number_to_percentage(percentage, strip_insignificant_zeros: true, precision: 1)
else "100%"
end
end
def namespaced_proposal_path(proposal, options = {})
@namespace_proposal_path ||= namespace
case @namespace_proposal_path
when "management"
management_proposal_path(proposal, options)
else
proposal_path(proposal, options)
end
end
def retire_proposals_options
Proposal::RETIRE_OPTIONS.map { |option| [t("proposals.retire_options.#{option}"), option] }
end
def empty_recommended_proposals_message_text(user)
if user.interests.any?
t("proposals.index.recommendations.without_results")
else
t("proposals.index.recommendations.without_interests")
end
end
def author_of_proposal?(proposal)
author_of?(proposal, current_user)
end
def current_editable?(proposal)
current_user && proposal.editable_by?(current_user)
end
def proposals_minimal_view_path
proposals_path(view: proposals_secondary_view)
end
def proposals_default_view?
@view == "default"
end
def proposals_current_view
@view
end
def proposals_secondary_view
proposals_current_view == "default" ? "minimal" : "default"
end
def css_for_proposal_info_row(proposal)
if proposal.image.present?
if params[:selected].present?
"small-12 medium-9 column"
else
"small-12 medium-6 large-7 column"
end
else
if params[:selected].present?
"small-12 column"
else
"small-12 medium-9 column"
end
end
end
def show_proposal_votes?
params[:selected].blank?
end
def show_featured_proposals?
params[:selected].blank? && @featured_proposals.present?
end
def show_recommended_proposals?
params[:selected].blank? && feature?("user.recommendations") && @recommended_proposals.present?
end
end