refs #9587
[arvados.git] / apps / workbench / app / views / pipeline_instances / _show_inputs.html.erb
1 <% n_inputs = 0 %>
2
3 <% content_for :pi_input_form do %>
4 <form role="form" style="width:60%">
5   <div class="form-group">
6     <% @object.components.each do |cname, component| %>
7       <% next if !component %>
8       <% component[:script_parameters].andand.each do |pname, pvalue_spec| %>
9         <% if pvalue_spec.is_a? Hash %>
10           <% if pvalue_spec[:description] or
11                 pvalue_spec[:required] or pvalue_spec[:optional] == false %>
12             <% n_inputs += 1 %>
13             <label for="<% "#{cname}-#{pname}" %>">
14               <%= @object.component_input_title(cname, pname) %>
15             </label>
16             <div>
17               <p class="form-control-static">
18                 <%= render_pipeline_component_attribute @object, :components, [cname, :script_parameters, pname.to_sym], pvalue_spec %>
19               </p>
20             </div>
21             <p class="help-block">
22               <%= pvalue_spec[:description] %>
23             </p>
24           <% end %>
25         <% end %>
26       <% end %>
27     <% end %>
28   </div>
29 </form>
30 <% end %>
31
32 <% if n_inputs == 0 %>
33   <p>This pipeline does not need any further inputs specified. You can start it by clicking the "Run" button whenever you're ready. (It's not too late to change existing settings, though.)</p>
34 <% else %>
35   <%= render_unreadable_inputs_present %>
36
37   <p><i>Provide <%= n_inputs > 1 ? 'values' : 'a value' %> for the following <%= n_inputs > 1 ? 'parameters' : 'parameter' %>, then click the "Run" button to start the pipeline.</i></p>
38   <% if @object.editable? %>
39     <%= content_for :pi_input_form %>
40       <%= link_to(url_for('pipeline_instance[state]' => 'RunningOnServer'),
41           class: 'btn btn-primary run-pipeline-button',
42           method: :patch
43           ) do %>
44         Run <i class="fa fa-fw fa-play"></i>
45     <% end %>
46   <% end %>
47
48 <% end %>
49
50 <div style="margin-top: 1em;">
51   <p>Click the "Components" tab above to see a full list of pipeline settings.</p>
52 </div>