diff --git a/app/views/foreman_puppet/puppetclasses/_classes.html.erb b/app/views/foreman_puppet/puppetclasses/_classes.html.erb index 1ef1215e..88b93c39 100644 --- a/app/views/foreman_puppet/puppetclasses/_classes.html.erb +++ b/app/views/foreman_puppet/puppetclasses/_classes.html.erb @@ -2,21 +2,36 @@
<% group.each do |list| %> <% next if list.nil? %> - + +
+ +
+
+
    + <% for klass in list.last.sort %> + <% unless authorized_for(:controller => :host_editing, :action => :edit_classes) %> +
  • + <%= h klass.name %> +
  • + <% else %> + <% style = ["puppetclass", + selected_puppet_classes.include?(klass) ? "hide" : "", + ].join(' ') %> + <%= content_tag(:li, klass, :id=>"puppetclass_#{klass.id}", :class=>style) do %> + <%= link_to_add_puppetclass(klass,type) %> + <% end %> + <% end %> + <% end %> +
+
+
+
<% end %>
<% end %> diff --git a/webpack/src/foreman_class_edit.js b/webpack/src/foreman_class_edit.js index c39d9c5e..d36ed5b0 100644 --- a/webpack/src/foreman_class_edit.js +++ b/webpack/src/foreman_class_edit.js @@ -28,9 +28,18 @@ export function filterPuppetClasses(item) { classElems .hide() .has(`[data-class-name*="${term}"]`) - .show(); + .show() + .filter('div') + .find('a.collapsed') + .attr('aria-expanded','true') + .click(); } else { - classElems.show(); + classElems + .show() + .has('.collapse') + .find('a[aria-expanded]') + .attr('aria-expanded','false') + .click(); } }