impress/app/views/item_trades/index.html.haml
Emi Matchu 0e32eb5d8f Hide duplicate timestamps on item trades page
Just a small visual cleanup because I happened to click on item trades
today! We don't need to repeat "This Week" a million times. Just output
it for the first row, then hide it for the following. (We still include
it in screen reader output for semantic clarity; this is just a visual
cleanup.)
2025-06-22 10:43:48 -07:00

44 lines
1.3 KiB
Text

- title t(".title.#{@type}")
- hide_title_header
= render partial: "items/item_header",
locals: {item: @item, trades: @item_trades,
current_subpage: "trades_#{@type}",
current_user_lists: @current_user_lists,
current_user_quantities: @current_user_quantities}
%h2.item-subpage-title= t(".title.#{@type}")
- if @trades.present?
%table.trades-table
%thead
%tr
%th= t(".table.headings.last_active")
%th= t(".table.headings.user.#{@type}")
%th= t(".table.headings.lists")
%tbody
- prev_trade = nil
- sorted_vaguely_by_trade_activity(@trades).each do |trade|
%tr
%td{
'data-is-same-as-prev': same_vague_trade_timestamp?(trade, prev_trade)
}
= vague_trade_timestamp trade
%td= trade.user.name
%td
- if trade.lists.present?
%ul.trade-list-names
- trade.lists.each do |list|
%li= link_to list.name, user_closet_hangers_path(trade.user,
anchor: "closet-list-#{list.id}")
- else
= link_to t(".table.not_in_a_list.#{@type}"), user_closet_hangers_path(trade.user,
anchor: "closet-hangers-group-#{@type == :offering}"),
class: "not-in-a-list"
- prev_trade = trade
- else
%p= t(".no_trades_yet")
- content_for :stylesheets do
= page_stylesheet_link_tag "layouts/items"
= page_stylesheet_link_tag "item_trades/index"