web commit by http://madduck.net/: more details
authorJoey Hess <joey@kitenet.net>
Tue, 18 Mar 2008 14:25:45 +0000 (10:25 -0400)
committerJoey Hess <joey@kitenet.net>
Tue, 18 Mar 2008 14:25:45 +0000 (10:25 -0400)
doc/todo/a_navbar_based_on_page_properties.mdwn

index 7300aced2da2badc4ca13bdb5b895a107c7f6c26..f88a3e802165d7c2b89abdd298133b60f56d280c 100644 (file)
@@ -7,17 +7,23 @@ properties.
 So imagine four pages A, B, A/C, and A/D, and these pages would include the
 following directives, respectively
 
-    \[[navbar id=main priority=3]]
-    \[[navbar id=main priority=5]]
-    \[[navbar id=main title="Something else"]]
-    \[[navbar id=main]]
-
-then the computed navigation bar would be
-
-    B
-    A
-      Something else
-      D
+    \[[!navbaritem navbar=main priority=3]]
+    \[[!navbaritem navbar=main priority=5]]
+    \[[!navbaritem navbar=main title="Something else"]]
+    \[[!navbaritem navbar=main]]
+
+then one could insert `\[[!navbar id=main maxlevels=0]]` somewhere and it
+would get replaced with (this being in the context of viewing page C):
+
+    <ol class="navbar" id="navbar_main">
+      <li><a href="../B">B</a></li>
+      <li><a href="../A">A</a>
+        <ol>
+          <li class="current">Something else</li>
+          <li><a href="D">D</a></li>
+        </ol>
+      </li>
+    </ol>
 
 B would sort before A because it has a higher priority, but C would sort
 before D because their priorities are equal. The overridden title is not used
@@ -25,8 +31,6 @@ for sorting.
 
 Also, the code automatically deduces that C and D are second-level under A.
 
-Obviously, while on e.g. A/C, the `<li>` element enclosing C would get a special CSS class (or even ID), and no `<a>` tag inside.
-
 I don't think this is hard to code up and it's what I've been using with
 [rest2web](http://www.voidspace.org.uk/python/rest2web/) and it's served me
 well.