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;