Files
fizzy/app/views/bubbles/_display_count_selector.html.erb
T

37 lines
1.6 KiB
Plaintext

<div class="card-count__selector txt-x-small" data-controller="dialog" data-action="keydown.esc->dialog#close click@document->dialog#closeOnClickOutside">
<button class="btn borderless btn--circle"
data-action="click->dialog#open:stop"
aria-haspopup="dialog"
aria-expanded="false"
aria-controls="display-count-dialog">
<span><%= display_count %></span>
</button>
<dialog id="display-count-dialog"
class="popup panel flex-column align-start justify-start fill-white shadow"
data-dialog-target="dialog"
aria-label="Select number of tickets to display">
<% display_count_options.each do |option| %>
<div class="btn fill-transparent popup__item full-width">
<%= form_tag request.path, method: :get, class: "full-width" do %>
<% filter.as_params.each do |key, value| %>
<% if value.is_a?(Array) %>
<% value.each do |v| %>
<%= filter_hidden_field_tag key, v %>
<% end %>
<% else %>
<%= filter_hidden_field_tag key, value %>
<% end %>
<% end %>
<%= hidden_field_tag :set_display_count, option[:value] %>
<input type="checkbox"
id="<%= option[:id] %>"
<%= "checked" if option[:selected] %>
onChange="this.form.submit()"
aria-label="<%= option[:label] %>">
<label for="<%= option[:id] %>" class="overflow-ellipsis"><%= option[:label] %></label>
<% end %>
</div>
<% end %>
</dialog>
</div>