<div class="panel panel-info">
<div class="panel-heading">
<h3 class="panel-title">
- <% "Collection #{@object.uuid}" %>
+ <% if @name_link.nil? and @object.uuid.match /[0-9a-f]{32}/ %>
+ Content hash <%= @object.portable_data_hash %>
+ <% else %>
+ <%= if @object.respond_to? :name
+ render_editable_attribute @object, :name
+ else
+ @name_link.andand.name || @object.uuid
+ end %>
+ <% end %>
</h3>
</div>
<div class="panel-body">
+ <div class="arv-description-as-subtitle">
+ <%= render_editable_attribute @object, 'description', nil, { 'data-emptytext' => "(No description provided)", 'data-toggle' => 'manual' } %>
+ </div>
<img src="/favicon.ico" class="pull-right" alt="" style="opacity: 0.3"/>
- <% if not (@output_of.andand.any? or @log_of.andand.any?) %>
- <p><i>No source information available.</i></p>
- <% end %>
-
- <% if @output_of.andand.any? %>
- <p>Output of jobs:<br />
- <%= render_arvados_object_list_start(@output_of, 'Show all jobs',
- jobs_path(filter: [['output', '=', @object.uuid]].to_json)) do |job| %>
- <%= link_to_if_arvados_object(job, friendly_name: true) %><br />
- <% end %>
- </p>
- <% end %>
-
- <% if @log_of.andand.any? %>
- <p>Log of jobs:<br />
- <%= render_arvados_object_list_start(@log_of, 'Show all jobs',
- jobs_path(filter: [['log', '=', @object.uuid]].to_json)) do |job| %>
- <%= link_to_if_arvados_object(job, friendly_name: true) %><br />
- <% end %>
- </p>
- <% end %>
+ <p><i>Content hash:</i><br />
+ <span class="arvados-uuid"><%= link_to @object.portable_data_hash, collection_path(@object.portable_data_hash) %></span>
+ </p>
+ <%= render partial: "show_source_summary" %>
</div>
</div>
</div>
<input type="text" class="form-control" placeholder="Search"/>
-->
<div style="height:0.5em;"></div>
- <% if not @logs.andand.any? %>
+ <% name_or_object = @name_link.andand.uuid ? @name_link : @object %>
+ <% if name_or_object.created_at and not @logs.andand.any? %>
<p>
- Created: <%= @object.created_at.to_s(:long) %>
+ Created: <%= name_or_object.created_at.to_s(:long) if name_or_object.created_at %>
</p>
<p>
- Last modified: <%= @object.modified_at.to_s(:long) %> by <%= link_to_if_arvados_object @object.modified_by_user_uuid, friendly_name: true %>
+ 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 %>
</p>
<% else %>
<%= render_arvados_object_list_start(@logs, 'Show all activity',
- logs_path(filters: [['object_uuid','=',@object.uuid]].to_json)) do |log| %>
+ logs_path(filters: [['object_uuid','=',name_or_object.uuid]].to_json)) do |log| %>
<p>
<%= time_ago_in_words(log.event_at) rescue 'unknown time' %> ago: <%= log.summary %>
<% if log.object_uuid %>
</div>
<div style="height:0.5em;"></div>
- <% if @folders.andand.any? %>
- <p>Included in folders:<br />
- <%= render_arvados_object_list_start(@folders, 'Show all folders',
- links_path(filter: [['head_uuid', '=', @object.uuid],
- ['link_class', '=', 'name']].to_json)) do |folder| %>
- <%= link_to_if_arvados_object(folder, friendly_name: true) %><br />
+ <% if @projects.andand.any? %>
+ <p>Included in projects:<br />
+ <%= render_arvados_object_list_start(@projects, 'Show all projects',
+ links_path(filters: [['head_uuid', '=', @object.uuid],
+ ['link_class', '=', 'name']].to_json)) do |project| %>
+ <%= link_to_if_arvados_object(project, friendly_name: true) %><br />
<% end %>
</p>
<% end %>
<% if @permissions.andand.any? %>
<p>Readable by:<br />
<%= render_arvados_object_list_start(@permissions, 'Show all permissions',
- links_path(filter: [['head_uuid', '=', @object.uuid],
+ links_path(filters: [['head_uuid', '=', @object.uuid],
['link_class', '=', 'permission']].to_json)) do |link| %>
<%= link_to_if_arvados_object(link.tail_uuid, friendly_name: true) %><br />
<% end %>
</div>
</div>
-<%= render file: 'application/show.html.erb' %>
+<%= render file: 'application/show.html.erb', locals: local_assigns %>