Files
grecia/app/components/dashboard/default_resource_component.rb

30 lines
638 B
Ruby

class Dashboard::DefaultResourceComponent < ApplicationComponent
attr_reader :resource, :proposal
use_helpers :can?
def initialize(resource, proposal)
@resource = resource
@proposal = proposal
end
def render?
can?(:"manage_#{resource}", proposal)
end
def resource_description
if resource == "mailing"
Setting["proposals.email_short_title"]
else
Setting["proposals.#{resource}_short_title"]
end
end
def resource_path
if resource == "polls"
proposal_dashboard_polls_path(proposal)
else
send("new_proposal_dashboard_#{resource}_path", proposal)
end
end
end