Project

General

Profile

« Previous | Next » 

Revision 163711af

Added by Ohad Levy about 14 years ago

  • ID 163711af617081b6a785c1daf9e703f23fa9aed6
fixes #200
  • added better module detection to properly show the module list
  • Add sorting to module class lists
  • Add description to each link

View differences:

app/models/puppetclass.rb
end
# returns module name (excluding of the class name)
# if class seperator does not exists (the "::" chars), then returns the whole class name
def module_name
if i = name.index("::")
return name[0..i-1] if i = name.index("::")
end
return (i = name.index("::")) ? name[0..i-1] : name
end
# returns class name (excluding of the module name)
def klass
mod = module_name
return name.gsub(mod+"::","") if mod
return name.gsub(module_name+"::","")
end
# add sort by class name
def <=>(other)
klass <=> other.klass
end
end
app/views/puppetclasses/_class_selection.html.erb
:locals => { :type => obj.class.to_s.downcase } %>
</div>
<% if (klasses = obj.hostgroup.try(:puppetclasses)).is_a?(Array) and obj.is_a?(Host) -%>
<% for klass in klasses -%>
<li><%= h klass.name %></li>
<% for klass in klasses.sort -%>
<li title="included already from host group"><%= h klass.name %></li>
<% end -%>
<% end -%>
</td>
app/views/puppetclasses/_classes.html.erb
<td id="classes">
<% group.each do |list| -%>
<% next if list.nil? %>
<li><%= link_to_function list.first, toggle_div(list.first) %></li>
<li title="Click to expand module class list"><%= link_to_function list.first, toggle_div(list.first) %></li>
<div id=<%= list.first %> style="display: none;">
<% for klass in list.last -%>
<% content_tag_for :div, klass do %>
<% for klass in list.last.sort -%>
<% content_tag_for :div, klass, :title => "Click to add this class" do %>
<%= link_to_add_puppetclass(klass, type) %>
<% end -%>
<% end -%>
app/views/puppetclasses/_selectedClasses.html.erb
<% content_tag_for :div, klass, :selected do %>
<li><%= link_to_remove_puppetclass klass %></li>
<li title="Click to remove this class"><%= link_to_remove_puppetclass klass %></li>
<%= hidden_field_tag "#{type}[puppetclass_ids][]", klass.id %>
<% end -%>

Also available in: Unified diff