MakersNetwork/agenda-saude

View on GitHub
app/views/admin/patients/index.html.erb

Summary

Maintainability
Test Coverage
<div class="row">
  <div class="col-10">
    <h1 class="h4">Pacientes</h1>
  </div>

  <div class="col-2">
    <%= link_to("Criar paciente", new_admin_patient_path, class: 'btn btn-primary btn-block') %>
  </div>
</div>

<div class="row mt-4">
  <div class="col-12">
    <%= form_with url: admin_patients_path, method: :get, local: true do |f| %>
      <div class="input-group input-group-lg">
        <%= f.text_field :search, autofocus: true, minlength: 3, maxlength: 100, class: "form-control",
                         placeholder: "Digite o CPF, nome do paciente, ou ID interna", value: @search,
                         data: { cy: "searchInput" } %>
        <div class="input-group-append">
          <%= f.submit "Buscar", class: "btn btn-outline-secondary", data: { cy: "searchSubmit" } %>
        </div>
      </div>
    <% end %>
  </div>
</div>

<ul class="nav nav-tabs mt-5 mb-1">
  <%= admin_nav_links(@filter, @search, @patients&.total_count) %>
</ul>

<table class="table table-bordered table-hover table-sm">
  <thead class="thead-dark">
  <tr>
    <th scope="col">#</th>
    <th scope="col">CPF</th>
    <th scope="col">Paciente</th>
  </tr>
  </thead>
  <tbody>
  <% @patients.each do |patient| -%>
    <tr data-cy="patient">
      <td>
        <%= link_to patient.id, admin_patient_path(id: patient.id) %>
      </td>
      <th scope="row" class="align-middle">
        <%= link_to patient.cpf, admin_patient_path(id: patient.id) %>
      </th>
      <td>
        <%= patient.name %>
      </td>
    </tr>
  <% end -%>
  </tbody>
</table>

<div>
  <%= paginate @patients %>
</div>