Merge pull request #1425 from basecamp/jz-10-29-25

JZ 10-29-25
This commit is contained in:
Jason Zimdars
2025-10-29 17:12:34 -05:00
committed by GitHub
5 changed files with 11 additions and 8 deletions
+5
View File
@@ -22,6 +22,7 @@ class Filter < ApplicationRecord
result = result.indexed_by(indexed_by)
result = result.sorted_by(sorted_by)
result = result.where(id: card_ids) if card_ids.present?
result = result.where.missing(:not_now) unless include_not_now_cards?
result = result.open unless include_closed_cards?
result = result.unassigned if assignment_status.unassigned?
result = result.assigned_to(assignees.ids) if assignees.present?
@@ -67,4 +68,8 @@ class Filter < ApplicationRecord
def include_closed_cards?
only_closed? || card_ids.present? || creator_ids.present?
end
def include_not_now_cards?
indexed_by.not_now? || card_ids.present?
end
end
+1 -3
View File
@@ -20,9 +20,7 @@
<%= render "cards/container/title", card: card %>
<%= render "cards/display/perma/steps", card: card %>
</div>
<% if card.published? %>
<%= render "cards/triage/columns", card: card if card.open? %>
<% end %>
<%= render "cards/triage/columns", card: card %>
</div>
<footer class="card__footer full-width flex align-start gap">
@@ -5,7 +5,7 @@
action: "keydown.esc->dialog#close click@document->dialog#closeOnClickOutside",
filter_show: user_filtering.show_indexed_by?,
combobox_default_value_value: "all",
combobox_default_label_value: "Status",
combobox_default_label_value: "Status",
combobox_with_default_class: "quick-filter--with-default" } do %>
<button type="button" class="btn input input--select flex-inline txt-x-small" data-action="click->dialog#toggle:stop">
<span class="overflow-ellipsis" data-combobox-target="label">
@@ -17,13 +17,13 @@
</template>
<%= filter_dialog "Filter by…" do %>
<strong class="popup__title">Filter by…</strong>
<strong class="popup__title">Filter by status…</strong>
<ul class="popup__list" data-filter-target="list" role="listbox">
<% Filter::INDEXES.each do |index| %>
<%= tag.li class: "popup__item", data: { navigable_list_target: "item", combobox_target: "item", combobox_value: index, combobox_label: index.humanize }, role: "checkbox", aria: { checked: filter.indexed_by == index } do %>
<button type="button" class="btn popup__btn" data-action="dialog#close combobox#change filter-settings#change form#submit">
<span class="overflow-ellipsis flex-item-grow"><%= index == "all" ? "Status" : index.humanize %></span>
<span class="overflow-ellipsis flex-item-grow"><%= index == "all" ? "Open" : index.humanize %></span>
<%= icon_tag "check", class: "checked flex-item-justify-end" %>
</button>
<% end %>
+1 -1
View File
@@ -1,5 +1,5 @@
<li>
<%= link_to result.source, class: "search__result", data: { turbo_frame: "_top" } do %>
<%= link_to result.source, class: "search__result", data: { turbo_frame: "_top", action: "bar#reset" } do %>
<div>
<h3 class="search__title txt--medium margin-none">
# <%= result.card_id %> <%= result.card_title %>
+1 -1
View File
@@ -26,7 +26,7 @@ class FilterTest < ActiveSupport::TestCase
assert_equal [ cards(:shipping) ], filter.cards
cards(:shipping).postpone
filter = users(:david).filters.new indexed_by: "now_now"
filter = users(:david).filters.new indexed_by: "not_now"
assert_includes filter.cards, cards(:shipping)
filter = users(:david).filters.new card_ids: [ cards(:logo, :layout).collect(&:id) ]