sul-dlss/argo

View on GitHub
app/views/technicals/show.html.erb

Summary

Maintainability
Test Coverage
<turbo-frame id="techmd">
  <% if @techmd.failure? %>
    <p>Technical Metadata connection failed: <%= @techmd.failure %></p>
  <% elsif @techmd.value!.blank? %>
    <p>Technical Metadata not available</p>
  <% else %>
    <ul class="file-list">
      <% @techmd.value!.each do | file_techmd | %>
        <li class="file">
          <span class="label">File</span><%= file_techmd['filename'] %>
          <ul class="metadata-list">
            <% file_techmd.reject { |key| %w[filename druid dro_file_parts].include?(key) }.each do |file_techmd_key, file_techmd_value| # rubocop:disable Performance/CollectionLiteralInLoop %>
              <li class="metadata">
                <span class="label"><%= file_techmd_key %></span>
                  <% unless file_techmd_value.is_a?(Hash) %>
                    <%= file_techmd_value %>
                  <% else %>
                    <ul class="metadata-list">
                      <% file_techmd_value.each do |key, value| %>
                        <li class="metadata">
                          <span class="label"><%= key %></span><%= value %>
                        </li>
                      <% end %>
                    </ul>
                  <% end %>
              </li>
            <% end %>
            <% unless file_techmd['dro_file_parts'].nil? %>
              <li class="metadata">
                <span class="label">File parts</span>
                <ul class="file-list">
                  <% file_techmd['dro_file_parts'].each do | file_part_techmd | %>
                    <li class="file">
                      <span class="label">File part</span><%= file_part_techmd['part_id'] %>
                      <ul class="metadata-list">
                        <% file_part_techmd.reject { |key| ['part_id'].include?(key) }.each do |file_part_techmd_key, file_part_techmd_value| # rubocop:disable Performance/CollectionLiteralInLoop %>
                          <li class="metadata">
                            <span class="label"><%= file_part_techmd_key %></span>
                            <% unless file_part_techmd_value.is_a?(Hash) %>
                              <%= file_part_techmd_value %>
                            <% else %>
                              <ul class="metadata-list">
                                <% file_part_techmd_value.each do |key, value| %>
                                  <li class="metadata">
                                    <span class="label"><%= key %></span><%= value %>
                                  </li>
                                <% end %>
                              </ul>
                            <% end %>
                          </li>
                        <% end %>
                      </ul>
                    </li>
                  <% end %>
                </ul>
              </li>
            <% end %>
          </ul>
        </li>
      <% end %>
    </ul>
  <% end %>
</turbo-frame>