1 <% content_for :tab_panes do %>
3 <% comparable = controller.respond_to? :compare %>
5 <ul class="nav nav-tabs" data-tab-counts-url="<%= url_for(action: :tab_counts) rescue '' %>">
6 <% pane_list.each_with_index do |pane, i| %>
7 <% pane_name = (pane.is_a?(Hash) ? pane[:name] : pane) %>
9 <% data_toggle = "tab" %>
10 <% tab_tooltip = "" %>
12 <% if (pane_name == "Log") and !(ArvadosBase.find(@object.owner_uuid).writable_by.include?(current_user.andand.uuid) rescue nil)
13 if controller.model_class.to_s == 'Job'
14 if @object.log and !@object.log.empty?
15 logCollection = Collection.find? @object.log
17 data_toggle = "disabled"
18 tab_tooltip = "Log data is not available"
21 elsif controller.model_class.to_s == 'PipelineInstance'
22 log_uuids = [@object.uuid] + pipeline_jobs(@object).collect{|x|x[:job].andand[:uuid]}.compact
23 if stderr_log_history(log_uuids, 1).empty?
24 data_toggle = "disabled"
25 tab_tooltip = "Log data is not available"
31 <li class="<%= 'active' if i==0 %>" data-toggle="tooltip" data-placement="top" title="<%=tab_tooltip%>">
32 <a href="#<%= pane_name %>"
33 id="<%= pane_name %>-tab"
34 data-toggle="<%= data_toggle %>"
36 data-tab-history-update-url=true
38 <%= pane_name.gsub('_', ' ') %> <span id="<%= pane_name %>-count"></span>
44 <div class="tab-content">
45 <% pane_list.each_with_index do |pane, i| %>
46 <% pane_name = (pane.is_a?(Hash) ? pane[:name] : pane) %>
47 <div id="<%= pane_name %>"
48 class="tab-pane fade <%= 'in active pane-loaded' if i==0 %> arv-log-event-listener arv-refresh-on-log-event arv-log-event-subscribe-to-pipeline-job-uuids"
49 <% if controller.action_name == "index" %>
50 data-object-kind="arvados#<%= ArvadosApiClient.class_kind controller.model_class %>"
52 data-object-uuid="<%= @object.uuid %>"
54 data-pane-content-url="<%= url_for(params.merge(tab_pane: pane_name)) %>"
55 style="margin-top:0.5em;"
57 <div class="pane-content">
59 <%= render_pane pane_name, to_string: true %>
61 <div class="spinner spinner-32px spinner-h-center"></div>