MakersNetwork/agenda-saude

View on GitHub
app/views/home/index.html.erb

Summary

Maintainability
Test Coverage
<%= embedded_page :home_header %>

<div class="card mt-3">
  <h5 class="card-header text-center">
    Status do agendamento: &nbsp;
    <% if @appointments_any %>
      <i class="fa fa-check-circle color-green" aria-hidden="true"></i>
      Disponível
    <% else %>
      <i class="fa fa-circle color-red" aria-hidden="true"></i> Não disponível, aguardando novas doses
    <% end %>
  </h5>

  <h5 class="card-header">Grupos que podem agendar:</h5>
  <ul class="list-group list-group-flush">
    <% if @can_schedule_conditions.empty? -%>
      <li class="list-group-item text-center">
        <h5 class="card-title">
          Nenhum grupo liberado para agendar neste momento
        </h5>
        <p>
          Fique atento à página inicial deste site e à imprensa oficial para saber quando você poderá agendar sua
          vacina.
        </p>
      </li>
    <% else -%>
      <% @can_schedule_conditions.each do |hash| -%>
        <li class="list-group-item">
          <h5 class="card-title">
            <i class="fa fa-check-circle <%= hash[:doses_count].positive? ? 'color-green' : 'color-goldenrod' %>" aria-hidden="true"></i> <%= hash[:name] %>
          </h5>
          <h6 class="card-subtitle mb-2">
            <% if hash[:doses_count].positive? -%>
              Até <%= hash[:doses_count] %> doses disponíveis
            <% else -%>
              Nenhuma dose disponível no momento, tente novamente mais tarde
            <% end -%>
          </h6>
          <p class="card-text small text-muted">
            Disponível nas unidades:
            <%= hash[:ubs_names] %>
          </p>
        </li>
      <% end -%>
    <% end -%>
  </ul>
</div>

<div class="card mt-3">
  <h5 class="card-header">Grupos que podem cadastrar:</h5>
  <ul class="list-group list-group-flush">
    <% if @can_register_condition_names.empty? -%>
      <li class="list-group-item text-center">
        <h5 class="card-title">
          Nenhum grupo pode se cadastrar no momento.
        </h5>
      </li>
    <% else -%>
    <% @can_register_condition_names.each do |name| -%>
      <li class="list-group-item">
        <i class="fa fa-circle color-skyblue" aria-hidden="true"></i> <%= name %>
      </li>
    <% end -%>
    <% end -%>
  </ul>
</div>

<div class="card mt-3 mb-3">
  <h5 class="card-header">Cadastro e agendamento do paciente a ser vacinado</h5>
  <div class="card-body">
    <%= form_for :patient, url: community_session_path, method: :post do |f| %>
      <div class="form-row">
        <div class="form-group col-md-12">
          <div class="input-group mb-2">
            <div class="input-group-prepend">
              <div class="input-group-text">CPF</div>
            </div>
            <%= f.text_field :cpf,
                             minlength: 11, maxlength: 14,
                             required: true,
                             class: "form-control form-control-lg",
                             aria: { describedby: 'cpfHelpInLine' },
                             placeholder: '000.000.000-00',
                             data: { cy: "cpfInputField", sel: "cpf" } %>
            <div class="input-group-append">
              <%= f.submit "Acessar",
                           class: "btn btn-primary",
                           data: { cy: "signUpButton" } %>
            </div>
          </div>
          <small id="cpfInputField" class="text-muted">
            Digite o número do CPF do paciente a ser vacinado para criar um cadastro ou,
            caso já tenha feito o cadastro, para agendar ou consultar o agendamento.
          </small>
        </div>
      </div>
    <% end %>
  </div>
</div>

<%= embedded_page :home %>