6ea381868e90e6ed6f9c2fd9d2d03f77a977f9a0
[arvados.git] / apps / workbench / app / views / application / _recent.html.erb
1 <% if @objects.empty? %>
2 <br/>
3 <p style="text-align: center">
4   No <%= controller.model_class.to_s.pluralize.underscore.gsub '_', ' ' %> to display.
5 </p>
6
7 <% else %>
8
9 <% attr_blacklist = ' created_at modified_at modified_by_user_uuid modified_by_client_uuid updated_at' %>
10
11 <table class="table arv-index">
12   <thead>
13     <tr>
14       <% @objects.first.attributes_for_display.each do |attr, attrvalue| %>
15       <% next if attr_blacklist.index(" "+attr) %>
16       <th class="arv-attr-<%= attr %>">
17         <%= controller.model_class.attribute_info[attr.to_sym].andand[:column_heading] or attr.sub /_uuid/, '' %>
18       </th>
19       <% end %>
20       <th>
21         <!-- a column for delete buttons -->
22       </th>
23     </tr>
24   </thead>
25       
26   <tbody>
27     <% @objects.each do |object| %>
28     <tr data-object-uuid="<%= object.uuid %>">
29       <% object.attributes_for_display.each do |attr, attrvalue| %>
30       <% next if attr_blacklist.index(" "+attr) %>
31       <td class="arv-object-<%= object.class.to_s %> arv-attr-<%= attr %>">
32         <% if attr == 'uuid' %>
33         <%= link_to_if_arvados_object object %>
34         <%= link_to_if_arvados_object(object, { link_text: raw('<i class="icon-hand-right"></i>') }) %>
35         <% else %>
36         <% if object.attribute_editable? attr %>
37         <%= render_editable_attribute object, attr %>
38         <% else %>
39         <%= resource_class_for_uuid(attrvalue, referring_attr: attr, referring_object: @object).to_s %>
40         <%= attrvalue %>
41         <% end %>
42         <%= link_to_if_arvados_object(attrvalue, { referring_object: @object, link_text: raw('<i class="icon-hand-right"></i>') }) if resource_class_for_uuid(attrvalue, {referring_object: @object}) %>
43         <% end %>
44       </td>
45       <% end %>
46       <td>
47         <% if object.editable? %>
48         <%= link_to({action: 'destroy', id: object.uuid}, method: :delete, remote: true, data: {confirm: "You are about to delete #{controller.model_class} #{object.uuid}.\n\nAre you sure?"}) do %>
49         <i class="icon-trash"></i>
50         <% end %>
51         <% end %>
52       </td>
53     </tr>
54     <% end %>
55   </tbody>
56
57   <tfoot>
58   </tfoot>
59 </table>
60
61 <% end %>