add pagy, improve checks#index

This commit is contained in:
david 2024-07-21 00:33:38 +02:00
parent c44c9ccaba
commit 6d3a269231
11 changed files with 274 additions and 10 deletions

View file

@ -1,10 +1,17 @@
<div id="<%= dom_id checklist_entry %>" class="row hover-row py-1 p-1">
<div class="col">
<%= button_to tag.i(class: "bi bi-arrow-down"), checklist_entry_path(checklist_entry), method: :patch, class: "btn btn-link p-0 float-start", data: { turbo_frame: "checklist_entries" }, params: { checklist_entry: { position: checklist_entry.position + 1 }} %>
<%= button_to tag.i(class: "bi bi-arrow-up"), checklist_entry_path(checklist_entry), method: :patch, class: "btn btn-link p-0 pe-3 float-start", data: { turbo_frame: "checklist_entries" }, params: { checklist_entry: { position: checklist_entry.position - 1 }} %>
<%= button_to tag.i(class: "bi bi-trash"), checklist_entry_path(checklist_entry), method: :delete, class: "btn btn-link p-0 ps-3 float-end" %>
<%= link_to tag.i(class: "bi bi-pencil"), edit_checklist_entry_path(checklist_entry), class: "float-end" %>
<% is_first = checklist_entry == checklist_entry.checklist.checklist_entries.first %>
<% is_last = checklist_entry == checklist_entry.checklist.checklist_entries.last %>
<div id="<%= dom_id checklist_entry %>" class="hover-row py-1">
<div class="d-flex">
<div style="width: 56px">
<%= button_to tag.i(class: "bi bi-arrow-down"), checklist_entry_path(checklist_entry), method: :patch, class: "btn btn-link p-0 #{"pe-3" if is_last } float-start", data: { turbo_frame: "checklist_entries" }, params: { checklist_entry: { position: checklist_entry.position + 1 }} unless is_last %>
<%= button_to tag.i(class: "bi bi-arrow-up"), checklist_entry_path(checklist_entry), method: :patch, class: "btn btn-link p-0 pe-3 float-start", data: { turbo_frame: "checklist_entries" }, params: { checklist_entry: { position: checklist_entry.position - 1 }} unless is_first %>
</div>
<div class="d-inline-flex flex-grow-1">
<%# checklist_entry.position %>
<%= link_to(checklist_entry.check.name, checklist_entry.check, data: { turbo_frame: "_top" }) %>
</div>
<%= link_to(checklist_entry.check.name, checklist_entry.check, data: { turbo_frame: "_top" }, class: "flex-grow-1") %>
<%= button_to tag.i(class: "bi bi-trash"), checklist_entry_path(checklist_entry), method: :delete, class: "btn btn-link" %>
<%= link_to tag.i(class: "bi bi-pencil"), edit_checklist_entry_path(checklist_entry), class: "btn btn-link" %>
</div>
</div>
</div>

View file

@ -1,5 +1,18 @@
<h1><%= t("scaffold.pagetitle_index", model: Check.model_name.human(count: 2)) %></h1>
<%= bootstrap_form_with(url: checks_path(page: params[:page]), method: :get, scope: :filter) do |form| %>
<%= form.hidden_field :page, value: params[:page] if params[:page] %>
<div class="row">
<div class="col-md-3">
<%= form.text_field(:s, placeholder: "suchen...", hide_label: true, value: filter_params[:s]) %>
</div>
<div class="col">
<%= form.submit name: "", value: "Suchen" %>
<%= link_to "Filter löschen", checks_path, class: "btn btn-outline-secondary" if filter_params[:s] %>
</div>
</div>
<% end %>
<%== pagy_info(@pagy) %>
<table class="table table-striped">
<thead>
<tr>
@ -20,6 +33,8 @@
</tbody>
</table>
<%== pagy_bootstrap_nav(@pagy) %>
<div class="action-row">
<%= link_to t("scaffold.link_new", model: Check.model_name.human), new_check_path %>
</div>

View file

@ -1,6 +1,8 @@
<nav class="navbar navbar-expand-lg bg-body-tertiary">
<div class="container">
<a class="navbar-brand" href="<%= root_path %>">A11yist</a>
<a class="navbar-brand" href="<%= root_path %>">
<%= tag.i(class: "bi bi-universal-access") %>
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>