From 291620abf74f84cf8451653b05e816fe984d0e01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20Mart=C3=ADn?= Date: Sat, 22 Feb 2025 18:48:36 +0100 Subject: [PATCH] Use tag.attributes to set conditional HTML attributes Using an `if..else` block made the code harder to follow since the opening tag was inside the block but the closing tag was outside it. Moreover, it didn't work well with HTML Beautifier (a gem we're going to introduce to manage ERB indentations). --- app/components/budgets/budget_component.html.erb | 7 +------ app/components/budgets/budget_component.rb | 13 +++++++++++++ .../legislation/draft_versions/show.html.erb | 16 ++++++++-------- 3 files changed, 22 insertions(+), 14 deletions(-) diff --git a/app/components/budgets/budget_component.html.erb b/app/components/budgets/budget_component.html.erb index 332920b2e..ef209f64e 100644 --- a/app/components/budgets/budget_component.html.erb +++ b/app/components/budgets/budget_component.html.erb @@ -1,9 +1,4 @@ -<% if budget.image.present? %> -
-<% else %> -
-<% end %> +
>
<%= t("budgets.index.title") %> diff --git a/app/components/budgets/budget_component.rb b/app/components/budgets/budget_component.rb index b21cf22e5..d0b11c010 100644 --- a/app/components/budgets/budget_component.rb +++ b/app/components/budgets/budget_component.rb @@ -5,4 +5,17 @@ class Budgets::BudgetComponent < ApplicationComponent def initialize(budget) @budget = budget end + + private + + def html_attributes + if budget.image.present? + { + class: "budget-header with-background-image", + style: attached_background_css(polymorphic_path(budget.image.variant(:large))) + } + else + { class: "budget-header" } + end + end end diff --git a/app/views/legislation/draft_versions/show.html.erb b/app/views/legislation/draft_versions/show.html.erb index a1ab873ab..f36e94fae 100644 --- a/app/views/legislation/draft_versions/show.html.erb +++ b/app/views/legislation/draft_versions/show.html.erb @@ -58,14 +58,14 @@
<%= t("legislation.draft_versions.show.text_body") %>
- <% if @draft_version.final_version? %> -
- <% else %> -
- <% end %> +
> <%= AdminLegislationSanitizer.new.sanitize(@draft_version.body_html) %>