app/views/submissions/_saved_order.html.erb
<%= panel('success',title:"Order added to submission at: #{order.created_at.to_formatted_s(:day_full_with_time)}") do %>
<%- form ||= nil %>
<span class="completed badge">✔</span>
<dl class="order-summary">
<% if order.study.present? %>
<dt>Study</dt>
<dd><%= link_to(order.study.name, order.study, target: "_blank") %></dd>
<% else %>
<dt>Cross Studies</dt>
<dd>
<% order.source_asset_studies.each do |study| %>
<%= link_to(study.name, study, target: "_blank") %>
<% end %>
</dd>
<% end %>
<% if order.project.present? %>
<dt>Project</dt>
<dd><%= link_to(order.project.name, order.project, target: "_blank") %></dd>
<% else %>
<dt>Cross Projects</dt>
<dd>
<% order.source_asset_projects.each do |project| %>
<%= link_to(project.name, project, target: "_blank") %>
<% end %>
</dd>
<% end %>
<% if order.asset_group.present? -%>
<dt>Asset Group</dt>
<dd><%= link_to(h(order.asset_group.name), study_asset_group_path(order.study, order.asset_group), target: "_blank") %></dd>
<% elsif order.assets.present? -%>
<dt>Samples</dt>
<dd><%= order.samples.pluck(:name).join(', ') %></dd>
<% else -%>
There are no assets in this order, it maybe damaged or very out of date
<% end -%>
<% unless order.request_types.blank? %>
<dt>Request types</dt><dd><ul>
<% RequestType.order(:order).find(order.request_types).each do |request_type| %>
<li><%= request_description(presenter, request_type) %></li>
<% end %>
</ul></dd>
<% end %>
<% unless order.request_options['pre_capture_plex_level'].nil? %>
<dt>Pre-capture plexing level</dt>
<dd><%= order.request_options['pre_capture_plex_level'] %></dd>
<dt>Pre-capture plex group</dt>
<dd><%= order.pre_cap_group %></dd>
<% end %>
<% unless order.request_options['gigabases_expected'].nil? %>
<dt>Gigabases expected</dt>
<dd><%= order.request_options['gigabases_expected'] %></dd>
<% end %>
<dt>Comments</dt>
<dl><%= order.comments.presence || 'No comments' %></dl>
</dl>
<div id="order-controls" class="buttons"></div>
<%= form_tag(order_path(order.id), method: :put, class: "comments-box") do -%>
<%= text_area_tag :comments, nil, placeholder: "Write a new comment here", class: "form-control", id: 'comments-input' %>
<%= submit_tag raw("✚ Add new comment"),
id: "add-comment",
class: "btn btn-default add-comment" %>
<% end %>
<% if form.present? -%>
<div class="save-buttons">
<%= hidden_field_tag :order_id,
order.id,
class: 'order-id'
%>
<%= submit_tag '♻ Delete Order',
class: 'delete-order btn btn-danger'
%>
</div>
<% end -%>
<%# We care about order of execution, so don't use type module here as that
ensures this fires *before* the order callback that updates the form action.
This is quite brittle, and more modern solutions should be considered, but
this will require a near complete rewrite of the submission front end. %>
<%= javascript_tag nonce: true do %>
window.SCAPE.submission.id = <%= presenter.submission.id %>;
<% end %>
<% end %>