|
<%= javascript "lookup_keys" %>
|
|
|
|
<%= form_for @puppetclass do |f| %>
|
|
<%= base_errors_for @puppetclass %>
|
|
<ul class="nav nav-tabs" data-tabs="tabs">
|
|
<li class="active"><a href="#primary" data-toggle="tab">Puppet Class</a></li>
|
|
<li><a href="#smart_class_param" data-toggle="tab">Smart Class Parameter</a></li>
|
|
<li><a href="#smart_vars" data-toggle="tab">Smart Variables</a></li>
|
|
</ul>
|
|
|
|
<div class="tab-content">
|
|
|
|
<div class="tab-pane active" id="primary">
|
|
<%= text_f f, :name %>
|
|
<%= text_f f, :environments, :value => @puppetclass.environments.to_sentence, :label=> 'Puppet Environments', :disabled => true %>
|
|
<%= multiple_checkboxes f, :hostgroups, @puppetclass, Hostgroup, :label => "Hostgroups" %>
|
|
</div>
|
|
|
|
<div class="tab-pane" id="smart_class_param">
|
|
<% if @puppetclass.class_params.empty? -%>
|
|
<div class="alert alert-message alert-success">
|
|
<a class="close" href="#" data-dismiss="alert">×</a>
|
|
<p><strong>This Puppet class has no parameters in its signature.</strong><br>
|
|
To update the class signature, go to the Puppet Classes page and select 'Import'.</p>
|
|
</div>
|
|
<% else -%>
|
|
<div class="control-group">
|
|
<label class="control-label">Filter By Environment</label>
|
|
<div class="controls">
|
|
<%= select_tag "environment_filter", options_from_collection_for_select(@puppetclass.environments, "id", "name"),
|
|
:include_blank => "All - (Not filtered)", :onchange=>'filterByEnvironment(this)'%>
|
|
</div>
|
|
</div>
|
|
<div class="tabbable tabs-left">
|
|
<ul class="nav nav-tabs smart-var-tabs span2" data-tabs="pills">
|
|
<% @puppetclass.class_params.each do |key| -%>
|
|
<li data-used-environments=<%= key.environments.map(&:to_s).to_json %>><a data-toggle="tab" id="pill_<%= key.to_s.gsub(' ','_') %>" href="#<%= key.to_s.gsub(' ','_') %>"><%= key %><span class="label label-important fr">×</span></a></li>
|
|
<% end -%>
|
|
</ul>
|
|
|
|
<div class="tab-content span9 smart-var-content">
|
|
<%= f.fields_for :class_params do |lookup_keys_form| %>
|
|
<%= render 'lookup_keys/fields', :f => lookup_keys_form %>
|
|
<% end %>
|
|
</div>
|
|
</div>
|
|
<% end -%>
|
|
</div>
|
|
<div class="tab-pane" id="smart_vars">
|
|
<% if @puppetclass.lookup_keys.empty? -%>
|
|
<div class="alert alert-message alert-warning">
|
|
<a class="close" href="#" data-dismiss="alert">×</a>
|
|
<p><strong>Help!</strong> What is a <a href=http://theforeman.org/projects/foreman/wiki/Smart_Variables rel="external">Smart variable</a>?</p>
|
|
</div>
|
|
<% end -%>
|
|
<div class="tabbable tabs-left">
|
|
<ul class="nav nav-tabs smart-var-tabs span2" data-tabs="pills">
|
|
<% @puppetclass.lookup_keys.each do |key| -%>
|
|
<li><a data-toggle="tab" id="pill_<%= key.to_s.gsub(' ','_') %>" href="#<%= key.to_s.gsub(' ','_') %>"><%= key %><span class="label label-important fr">×</span></a></li>
|
|
<% end -%>
|
|
<li><%= link_to_function "+ Add Variable", "add_child_node(this);" ,:class=>"btn btn-success",:style=>":hover{}", :"data-association" => :lookup_keys %></li>
|
|
</ul>
|
|
|
|
<div class="tab-content span9 smart-var-content">
|
|
<%= f.fields_for :lookup_keys do |lookup_keys_form| %>
|
|
<%= render 'lookup_keys/fields', :f => lookup_keys_form %>
|
|
<% end %>
|
|
</div>
|
|
</div>
|
|
<%= new_child_fields_template(f, :lookup_keys, {:partial => "lookup_keys/fields"})%>
|
|
</div>
|
|
|
|
<%= submit_or_cancel f %>
|
|
</div>
|
|
<% end %>
|