sanger/limber

View on GitHub
app/views/plate_creation/donor_pooling_plate.html.erb

Summary

Maintainability
Test Coverage
<%= page('donor-pooling-page') do %>
  <%= content do %>
    <%= card id: 'main-content' do %>
      <div>
        <h3>Instructions</h3>
        <p>This step allows multiple source plates for pooling together into a destination plate.</p>
        <p>This process checks if pooling is possible under the following conditions:</p>
        <ul>
          <li>All source wells with aliquots must have donor IDs.</li>
          <li>Combining samples from different studies or projects in the same pool is not allowed.</li>
          <li>Including samples with the same donor ID in the same pool is not allowed.</li>
          <li>All wells must have cell count data unless they are failed.</li>
          <li>The number of pools must not exceed the number configured for the samples.</li>
        </ul>
        <p>Scan the source plate barcodes into the panel on the right of the screen (the order doesn't matter) and click <i>Create Plate</i>.</p>
      </div>
    <% end %>
  <% end %>
  <%= sidebar do %>
    <%= card title: 'Add plates to pool', without_block: true do %>
      <div id="validation_report"></div>
      <div id="add-plates-instructions-block" class="card-body" >
        <div class="instructions">
          <p>Scan in up to <%= @labware_creator.max_number_of_source_plates %> plates.</p>
        </div>
      </div>
    <% end %>
    <div class="card-body">
      <%= form_for(
        @labware_creator,
        url: limber_plate_children_path(@labware_creator.parent_uuid),
        as: :plate,
        html: { method: :post }) do |form| %>

        <%= form.hidden_field :parent_uuid %>
        <%= form.hidden_field :purpose_uuid %>
        <% @labware_creator.max_number_of_source_plates.times do |index| %>
          <div class="labware-container scan-labware form-group row">
            <label for="plate[barcodes][<%= index %>]"
                   class="plate-label col-md-2" >Source Plate <%= index + 1 %></label>
            <input type="text"
                   id="plate[barcodes][<%= index %>]"
                   name="plate[barcodes][]"
                   class="form-control col-md-8" />
          </div>
        <% end %>
        <%= form.submit 'Create Plate', class: 'btn btn-success btn-lg', id: 'create-labware' %>
      <% end %>
    </div>
  <% end %>
<% end %>