The `use_helpers` method was added in ViewComponent 3.8.0, and it's included by default in all components since version 3.11.0. Note we sometimes delegated the `can?` method to the controller instead of the helpers, for no particularly reason. We're unifying that code as well.
19 lines
455 B
Ruby
19 lines
455 B
Ruby
class Legislation::Proposals::VotesComponent < ApplicationComponent
|
|
attr_reader :proposal
|
|
use_helpers :current_user, :link_to_verify_account, :can?
|
|
|
|
def initialize(proposal)
|
|
@proposal = proposal
|
|
end
|
|
|
|
private
|
|
|
|
def can_vote?
|
|
can?(:create, proposal.votes_for.new(voter: current_user))
|
|
end
|
|
|
|
def cannot_vote_text
|
|
t("legislation.proposals.not_verified", verify_account: link_to_verify_account) unless can_vote?
|
|
end
|
|
end
|