Skip to content

Commit

Permalink
Issue #721 Using topic map to generate navigation
Browse files Browse the repository at this point in the history
  • Loading branch information
hferentschik committed Apr 24, 2017
1 parent cebec68 commit fd33efc
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 134 deletions.
2 changes: 1 addition & 1 deletion docs/Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ end

desc 'Generate site'
task :gen => [:init, :markdown_to_asciidoc, :adoc_variables] do
sh "bundle exec middleman build"
sh "bundle exec middleman build --no-clean"
end

desc 'Serve site'
Expand Down
54 changes: 54 additions & 0 deletions docs/helpers/custom_helpers.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
require 'yaml'

module CustomHelpers

def navigation_menu
navigation = ""
topic_map = YAML.load_file('build/_topic_map.yml')
topic_map["Topics"].each_with_index do |topic, index|
topic_directory = topic["Dir"]
if topic_directory.nil?
next "<li><a class=\"\" href=\"/#{topic["File"]}.html\">&nbsp;#{topic["Name"]}</a></li>"
end

caret = "fa-caret-right"
in_class = ""
subnav = ""
entries = ""
sub_topics = topic["Topics"]
unless sub_topics.nil?
sub_topics.each do |subtopic|
path = current_page.url
sub_topic_file = subtopic["File"]
sub_topic_name = subtopic["Name"]
if !path.end_with?("html")
path += "index.html"
end
if path == "/#{topic_directory}/#{sub_topic_file}.html"
in_class = "in"
caret = "fa-caret-down"
entries += "<li><a class=\"active\" href=\"/#{topic_directory}/#{sub_topic_file}.html\">&nbsp;#{sub_topic_name}</a></li>"
else
entries += "<li><a class=\"\" href=\"/#{topic_directory}/#{sub_topic_file}.html\">&nbsp;#{sub_topic_name}</a></li>"
end
end

subnav += "<ul id=\"topicSubGroup-#{index}\" class=\"nav-tertiary list-unstyled collapse #{in_class}\">"
subnav += entries
subnav += "</ul>"
end

topic_nav = <<-HEREDOC
<li class="nav-header">
<a class="" href="javascript:void(0);" data-toggle="collapse" data-target="#topicSubGroup-%d">
<span id="sgSpan-%d" class="fa %s"></span>&nbsp;%s
</a>
%s
</li>
HEREDOC
navigation += topic_nav % [index, index, caret, topic["Name"], subnav]
end

navigation
end
end
134 changes: 1 addition & 133 deletions docs/source/layouts/layout.erb
Original file line number Diff line number Diff line change
Expand Up @@ -72,139 +72,7 @@
<span id="tgSpan11" class="fa fa-angle-down"></span>Minishift
</a>
<ul id="topicGroup11" class="collapse in list-unstyled">
<li><a class="" href="/index.html">Overview</a></li>
<li class="nav-header">
<a class="" href="javascript:void(0);" data-toggle="collapse" data-target="#topicSubGroup-11-1">
<span id="sgSpan-11-1" class="fa fa-caret-right"></span>&nbsp;Getting Started
</a>
<ul id="topicSubGroup-11-1" class="collapse">

<li><a class="" href="/getting-started/index.html">Overview</a></li>

<li><a class="" href="/getting-started/docker-machine-drivers.html">Installing Docker Machine drivers</a></li>
<li><a class="" href="/getting-started/installing.html">Installing Minishift</a></li>
<li><a class="" href="/getting-started/quickstart.html">Quickstart</a></li>
</ul>
</li>
<li class="nav-header">
<a class="" href="javascript:void(0);" data-toggle="collapse" data-target="#topicSubGroup-11-2">
<span id="sgSpan-11-2" class="fa fa-caret-right"></span>&nbsp;Using Minishift
</a>
<ul id="topicSubGroup-11-2" class="nav-tertiary list-unstyled collapse">

<li><a class="" href="/using/index.html">Overview</a></li>

<li><a class="" href="/using/managing-minishift.html">Managing Minishift</a></li>

<li><a class="" href="/using/addons.html">Minishift Add-ons</a></li>

<li><a class="" href="/using/mounting-host-folders.html">Host Folders</a></li>

<li><a class="" href="/using/interacting-with-openshift.html">Interacting with OpenShift</a></li>

<li><a class="" href="/using/docker-daemon.html">Minishift Docker daemon</a></li>

<li><a class="" href="/using/accessing-the-openshift-docker-registry.html">Accessing the OpenShift Registry</a></li>

<li><a class="" href="/using/troubleshooting.html">Troubleshooting Minishift</a></li>
</ul>
</li>
<li class="nav-header">
<a class="" href="javascript:void(0);" data-toggle="collapse" data-target="#topicSubGroup-11-3">
<span id="sgSpan-11-3" class="fa fa-caret-right"></span>&nbsp;Developing Minishift
</a>
<ul id="topicSubGroup-11-3" class="nav-tertiary list-unstyled collapse">

<li><a class="" href="/developing/index.html">Overview</a></li>

<li><a class="" href="/developing/developing.html">Developing Minishift</a></li>

<li><a class="" href="/developing/ci.html">Minishift CI</a></li>

<li><a class="" href="/developing/writing-docs.html">Writing documentation</a></li>

<li><a class="" href="/developing/releasing.html">Releasing Minishift</a></li>
</ul>
</li>
<li class="nav-header">
<a class="" href="javascript:void(0);" data-toggle="collapse" data-target="#topicSubGroup-11-4">
<span id="sgSpan-11-4" class="fa fa-caret-right"></span>&nbsp;Command Reference
</a>
<ul id="topicSubGroup-11-4" class="nav-tertiary list-unstyled collapse">

<li><a class="" href="/command-ref/minishift.html">minishift</a></li>

<li><a class="" href="/command-ref/minishift_addons.html">minishift addons</a></li>

<li><a class="" href="/command-ref/minishift_addons_disable.html">minishift addons disable</a></li>

<li><a class="" href="/command-ref/minishift_addons_enable.html">minishift addons enable</a></li>

<li><a class="" href="/command-ref/minishift_addons_install.html">minishift addons install</a></li>

<li><a class="" href="/command-ref/minishift_addons_list.html">minishift addons list</a></li>

<li><a class="" href="/command-ref/minishift_config.html">minishift config</a></li>

<li><a class="" href="/command-ref/minishift_config_get.html">minishift config get</a></li>

<li><a class="" href="/command-ref/minishift_config_set.html">minishift config set</a></li>

<li><a class="" href="/command-ref/minishift_config_unset.html">minishift config unset</a></li>

<li><a class="" href="/command-ref/minishift_config_view.html">minishift config view</a></li>

<li><a class="" href="/command-ref/minishift_console.html">minishift console</a></li>

<li><a class="" href="/command-ref/minishift_delete.html">minishift delete</a></li>

<li><a class="" href="/command-ref/minishift_docker-env.html">minishift docker-env</a></li>

<li><a class="" href="/command-ref/minishift_hostfolder.html">minishift hostfolder</a></li>

<li><a class="" href="/command-ref/minishift_hostfolder_add.html">minishift hostfolder add</a></li>

<li><a class="" href="/command-ref/minishift_hostfolder_list.html">minishift hostfolder list</a></li>

<li><a class="" href="/command-ref/minishift_hostfolder_mount.html">minishift hostfolder mount</a></li>

<li><a class="" href="/command-ref/minishift_hostfolder_remove.html">minishift hostfolder remove</a></li>

<li><a class="" href="/command-ref/minishift_hostfolder_umount.html">minishift hostfolder umount</a></li>

<li><a class="" href="/command-ref/minishift_ip.html">minishift ip</a></li>

<li><a class="" href="/command-ref/minishift_logs.html">minishift logs</a></li>

<li><a class="" href="/command-ref/minishift_openshift.html">minishift openshift</a></li>

<li><a class="" href="/command-ref/minishift_openshift_config.html">minishift openshift config</a></li>

<li><a class="" href="/command-ref/minishift_openshift_config_set.html">minishift openshift config set</a></li>

<li><a class="" href="/command-ref/minishift_openshift_config_view.html">minishift openshift config view</a></li>

<li><a class="" href="/command-ref/minishift_openshift_restart.html">minishift openshift restart</a></li>

<li><a class="" href="/command-ref/minishift_openshift_service.html">minishift openshift service</a></li>

<li><a class="" href="/command-ref/minishift_openshift_service_list.html">minishift openshift service list</a></li>

<li><a class="" href="/command-ref/minishift_openshift_version.html">minishift openshift version</a></li>

<li><a class="" href="/command-ref/minishift_openshift_version_list.html">minishift openshift version list</a></li>

<li><a class="" href="/command-ref/minishift_ssh.html">minishift ssh</a></li>

<li><a class="" href="/command-ref/minishift_start.html">minishift start</a></li>

<li><a class="" href="/command-ref/minishift_status.html">minishift status</a></li>

<li><a class="" href="/command-ref/minishift_stop.html">minishift stop</a></li>

<li><a class="" href="/command-ref/minishift_version.html">minishift version</a></li>
</ul>
</li>
<%= navigation_menu %>
</ul>
</li>
</ul>
Expand Down

0 comments on commit fd33efc

Please sign in to comment.