Merge branch 'master' into 8286-fav-projects
[arvados.git] / apps / workbench / app / views / application / _projects_tree_menu.html.erb
index 8139beace595a2abc3cc7457e9624a5edc44c1af..ad2620d3443f5dadb9b1ae9266e1d8d4c5e95d0d 100644 (file)
@@ -1,4 +1,19 @@
-<li role="presentation" class="dropdown-header" title="Toplevel projects">
+<% starred_projects = my_starred_projects current_user%>
+<% if starred_projects.andand.any? %>
+  <li role="presentation" class="dropdown-header">
+    My favorite projects
+  </li>
+  <% (starred_projects).each do |pnode| %>
+    <li>
+      <%= project_link_to.call({object: pnode, depth: 0}) do%>
+        <span style="padding-left: 0em"></span><%= pnode[:name] %>
+      <% end %>
+    </li>
+  <% end %>
+  <li role="presentation" class="divider"></li>
+<% end %>
+
+<li role="presentation" class="dropdown-header">
   My projects
 </li>
 <li>
     <span style="padding-left: 0">Home</span>
   <% end %>
 </li>
-<% my_toplevel_projects.each do |pnode| %>
+<% my_tree = my_wanted_projects_tree current_user %>
+<% my_tree[0].each do |pnode| %>
+  <% next if pnode[:object].class != Group %>
   <li>
-    <%= project_link_to.call({object: pnode, depth: 1}) do %>
-      <span style="padding-left: 1em"></span><%= pnode[:name] %>
+    <%= project_link_to.call pnode do %>
+      <span style="padding-left: <%= pnode[:depth] %>em"></span><%= pnode[:object].name %>
     <% end %>
   </li>
 <% end %>
+<% if my_tree[1] or my_tree[0].size > 200 %>
+<li role="presentation" class="dropdown-header">
+  Some projects have been omitted.
+</li>
+<% elsif my_tree[2] %>
+<li role="presentation" class="dropdown-header">
+  Showing top three levels of your projects.
+</li>
+<% end %>