You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by he...@apache.org on 2014/08/30 01:28:12 UTC

[7/9] git commit: Add second-level menu support

Add second-level menu support


Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn-site/commit/a4eb5f86
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn-site/tree/a4eb5f86
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn-site/diff/a4eb5f86

Branch: refs/heads/master
Commit: a4eb5f863af8ccd8e9f309915541164d92a84072
Parents: a005e49
Author: Richard Downer <ri...@apache.org>
Authored: Thu Aug 21 17:27:47 2014 +0100
Committer: Richard Downer <ri...@apache.org>
Committed: Thu Aug 21 17:48:23 2014 +0100

----------------------------------------------------------------------
 _layouts/base.html         | 13 +++++++++++++
 _layouts/normal.html       | 18 ++++++++++++++++--
 _plugins/site_structure.rb | 12 ++++++++++++
 style/css/theme.css        |  4 ++++
 4 files changed, 45 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-brooklyn-site/blob/a4eb5f86/_layouts/base.html
----------------------------------------------------------------------
diff --git a/_layouts/base.html b/_layouts/base.html
index 1ae084f..b4c4b02 100644
--- a/_layouts/base.html
+++ b/_layouts/base.html
@@ -30,7 +30,20 @@
             <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
                 <ul class="nav navbar-nav navbar-right">
                     {% for navgroup in site.data.navgroups %}
+                    {% if navgroup.page.menu2 %}
+                    <li class="dropdown{% if page.navgroup == navgroup.id %} active{% endif %}">
+                        <a href="{{site.url}}{{navgroup.page.url}}">{{navgroup.title}}</a>
+                        <ul class="dropdown-menu" role="menu">
+                            {% for child in navgroup.page.menu2 %}
+                            <li>
+                                <a href="{{site.url}}{{child.reference.url}}">{{child.reference.title}}</a>
+                            </li>
+                            {% endfor %}
+                        </ul>
+                    </li><!-- {{ navgroup.id }} -->
+                    {% else %}
                     <li class="{% if page.navgroup == navgroup.id %}active{% endif %}"><a href="{{site.url}}{{navgroup.page.url}}">{{navgroup.title}}</a></li><!-- {{ navgroup.id }} -->
+                    {% endif %}
                     {% endfor %}
                 </ul>
             </div><!-- /.navbar-collapse -->

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn-site/blob/a4eb5f86/_layouts/normal.html
----------------------------------------------------------------------
diff --git a/_layouts/normal.html b/_layouts/normal.html
index e4177de..3a1c23f 100644
--- a/_layouts/normal.html
+++ b/_layouts/normal.html
@@ -2,8 +2,22 @@
 layout: base
 ---
 <div class="container">
-    <h1>{{ page.title }}</h1>
-    {{ content }}
+    <div class="row">
+        <div class="col-md-9">
+            <h1>{{ page.title }}</h1>
+            {{ content }}
+        </div>
+        <div class="col-md-3">
+            {% if page.menu2 %}
+            <div class="list-group">
+                <h4><a href="{{site.url}}{{page.menu2parent.url}}" class="list-group-item{% if page.menu2parent.path == page.path %} active{% endif %}">{{ page.menu2parent.title }}</a></h4>
+                {% for child in page.menu2 %}
+                <a href="{{site.url}}{{child.reference.url}}" class="list-group-item{% if child.reference.path == page.path %} active{% endif %}">{{ child.reference.title }}</a>
+                {% endfor %}
+            </div>
+            {% endif %}
+        </div>
+    </div>
 </div>
 
 <div id="footer">

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn-site/blob/a4eb5f86/_plugins/site_structure.rb
----------------------------------------------------------------------
diff --git a/_plugins/site_structure.rb b/_plugins/site_structure.rb
index 960d37c..15f9257 100644
--- a/_plugins/site_structure.rb
+++ b/_plugins/site_structure.rb
@@ -33,6 +33,18 @@ module SiteStructure
       end
       puts "#{page.path} #{page.data['navgroup']}"
       
+      # Figure out second level menu
+      # If there's no parent => I'm at the top level, so no action
+      # If there's a parent, but parent has no parent => I'm at second level, so set second-level menu
+      # Otherwise, use the parent's second level menu
+      if parent && !parent.data['parent']
+        page.data['menu2parent'] = page
+        page.data['menu2'] = page.data['children']
+      elsif parent && parent.data['parent']
+        page.data['menu2parent'] = parent.data['menu2parent']
+        page.data['menu2'] = parent.data['menu2']
+      end
+      
       page.data['parent'] = parent
       if page.data['children']
         page.data['children'].each do |c|

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn-site/blob/a4eb5f86/style/css/theme.css
----------------------------------------------------------------------
diff --git a/style/css/theme.css b/style/css/theme.css
index c9f4e5b..135c2b0 100644
--- a/style/css/theme.css
+++ b/style/css/theme.css
@@ -16,6 +16,10 @@ html {
     margin-left: -30px !important;
 }
 
+ul.nav li.dropdown:hover > ul.dropdown-menu {
+    display: block;
+}
+
 #apachebrooklynbanner {
     background-image: url("../img/apache-brooklyn-logo-817px-wide.png");
     background-repeat: no-repeat;