Files
nairobi/app/components/admin/budgets/links_component.rb
Javi Martín 1d955b7a20 Simplify using helper methods in components
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.
2024-03-02 17:34:25 +01:00

31 lines
653 B
Ruby

class Admin::Budgets::LinksComponent < ApplicationComponent
attr_reader :budget
use_helpers :can?
def initialize(budget)
@budget = budget
end
private
def action(action_name, **options)
render Admin::ActionComponent.new(action_name, budget, **options)
end
def results_text
if Abilities::Everyone.new(User.new).can?(:read_results, budget)
t("budgets.show.see_results")
else
t("admin.budgets.actions.preview_results")
end
end
def preview_text
if budget.published?
t("admin.shared.view")
else
t("admin.budgets.actions.preview")
end
end
end