Improve filter form

This commit is contained in:
david 2024-10-28 22:39:17 +01:00
parent 41dc3281ad
commit fd86bdd10f
2 changed files with 10 additions and 6 deletions

View file

@ -61,4 +61,8 @@
.form-label { .form-label {
font-size: 1.3rem; font-size: 1.3rem;
}
.highlight-when-nonempty:not([value=""]) {
@extend .border-primary
} }

View file

@ -10,17 +10,17 @@ h1
.me-3 .me-3
= f.check_box :principle_id_in, checked: @q[:principle_id_in].include?(principle.id), label: principle.name_de, id: "principle_id_in_#{principle.id}" = f.check_box :principle_id_in, checked: @q[:principle_id_in].include?(principle.id), label: principle.name_de, id: "principle_id_in_#{principle.id}"
= f.submit = f.submit
- filter_active = filter_params.to_h.any? { |_, v| v.present? }
.card.mb-3 .card.mb-3 class="#{"border-primary" if filter_active }"
.card-header.d-flex data-bs-toggle="collapse" href="#filter-form" role="button" aria-expanded="#{filter_params.present?}" aria-controler="filter-form" class="#{"text-bg-primary" if filter_params.present?}" .card-header.d-flex data-bs-toggle="collapse" href="#filter-form" role="button" aria-expanded="#{filter_active}" aria-controler="filter-form" class="#{"text-bg-primary" if filter_active}"
span.bi.bi-funnel span.bi.bi-funnel
strong.ms-2 Filter strong.ms-2 Filter
.card-body.collapse id="filter-form" class="#{"show" if filter_params.present?}" .card-body.collapse id="filter-form" class="#{"show" if filter_active}"
= bootstrap_form_with(url: checks_path, method: :get, scope: :filter) do |form| = bootstrap_form_with(url: checks_path, method: :get, scope: :filter) do |form|
= form.hidden_field :page, value: params[:page] if params[:page] = form.hidden_field :page, value: params[:page] if params[:page]
.row .row
.col-lg-12 .col-lg-12
= form.text_field(:s, placeholder: "suchen...", hide_label: true, value: filter_params[:s]) = form.text_field(:s, placeholder: "suchen...", class: "highlight-when-nonempty", hide_label: true, value: filter_params[:s] || "")
.col-lg-2 .col-lg-2
label.fw-bold = Principle.model_name.human(count: 2) label.fw-bold = Principle.model_name.human(count: 2)
- Principle.all.sort_by(&:name_de).each do |principle| - Principle.all.sort_by(&:name_de).each do |principle|
@ -49,7 +49,7 @@ h1
.row.mt-3 .row.mt-3
.col .col
= form.submit name: "", value: "Filtern" = form.submit name: "", value: "Filtern"
= link_to "Filter löschen", checks_path, class: "btn btn-outline-secondary ms-3", data: { turbo_prefetch: false } if filter_params.keys.any? = link_to "Filter löschen", checks_path, class: "btn btn-primary ms-3", data: { turbo_prefetch: false } if filter_params.keys.any?
table.table.table-striped table.table.table-striped
thead thead