3504: Fix collection page rendering to work with collections as regular uuids.
[arvados.git] / apps / workbench / app / views / collections / show.html.erb
1 <div class="row row-fill-height">
2   <div class="col-md-6">
3     <div class="panel panel-info">
4       <div class="panel-heading">
5         <h3 class="panel-title">
6           <%= if @object.respond_to? :name
7                 render_editable_attribute @object, :name
8               else
9                 @name_link.andand.name || @object.uuid
10               end%>
11         </h3>
12       </div>
13       <div class="panel-body">
14         <img src="/favicon.ico" class="pull-right" alt="" style="opacity: 0.3"/>
15         <p><i>Content hash:</i><br />
16           <span class="arvados-uuid"><%= link_to @object.portable_data_hash, collection_path(@object.portable_data_hash) %></span></p>
17         <%= render partial: "show_source_summary" %>
18       </div>
19     </div>
20   </div>
21   <div class="col-md-3">
22     <div class="panel panel-default">
23       <div class="panel-heading">
24         <h3 class="panel-title">
25           Activity
26         </h3>
27       </div>
28       <div class="panel-body smaller-text">
29         <!--
30         <input type="text" class="form-control" placeholder="Search"/>
31         -->
32         <div style="height:0.5em;"></div>
33         <% name_or_object = @name_link.andand.uuid ? @name_link : @object %>
34         <% if name_or_object.created_at and not @logs.andand.any? %>
35           <p>
36             Created: <%= name_or_object.created_at.to_s(:long) if name_or_object.created_at %>
37           </p>
38           <p>
39             Last modified: <%= name_or_object.modified_at.to_s(:long) if name_or_object.modified_at %> by <%= link_to_if_arvados_object name_or_object.modified_by_user_uuid, friendly_name: true %>
40           </p>
41         <% else %>
42           <%= render_arvados_object_list_start(@logs, 'Show all activity',
43                 logs_path(filters: [['object_uuid','=',name_or_object.uuid]].to_json)) do |log| %>
44           <p>
45           <%= time_ago_in_words(log.event_at) rescue 'unknown time' %> ago: <%= log.summary %>
46             <% if log.object_uuid %>
47             <%= link_to_if_arvados_object log.object_uuid, link_text: raw('<i class="fa fa-hand-o-right"></i>') %>
48             <% end %>
49           </p>
50           <% end %>
51         <% end %>
52       </div>
53     </div>
54   </div>
55   <div class="col-md-3">
56     <div class="panel panel-default">
57       <div class="panel-heading">
58         <h3 class="panel-title">
59           Sharing and permissions
60         </h3>
61       </div>
62       <div class="panel-body">
63         <!--
64         <input type="text" class="form-control" placeholder="Search"/>
65         -->
66
67         <div id="sharing-button">
68           <%= render partial: 'sharing_button' %>
69         </div>
70
71         <div style="height:0.5em;"></div>
72         <% if @projects.andand.any? %>
73           <p>Included in projects:<br />
74           <%= render_arvados_object_list_start(@projects, 'Show all projects',
75                 links_path(filters: [['head_uuid', '=', @object.uuid],
76                                      ['link_class', '=', 'name']].to_json)) do |project| %>
77             <%= link_to_if_arvados_object(project, friendly_name: true) %><br />
78           <% end %>
79           </p>
80         <% end %>
81         <% if @permissions.andand.any? %>
82           <p>Readable by:<br />
83           <%= render_arvados_object_list_start(@permissions, 'Show all permissions',
84                 links_path(filters: [['head_uuid', '=', @object.uuid],
85                                     ['link_class', '=', 'permission']].to_json)) do |link| %>
86           <%= link_to_if_arvados_object(link.tail_uuid, friendly_name: true) %><br />
87           <% end %>
88           </p>
89         <% end %>
90
91       </div>
92     </div>
93   </div>
94 </div>
95
96 <%= render file: 'application/show.html.erb', locals: local_assigns %>