As a plausable solution, rebuilding the commons-build/xdocs/navigation.xml and commons-build/navi_incl.xml document to draw its contents from the menu "ent" files. Set the types of the "about menu" to "header" and the rest to "footer". These attributes are used in the commons-site.jsl to separate the rendering of the navigation menus as so:

<jsl:applyTemplates select="$nav/body/[EMAIL PROTECTED]'header']"/>
<jsl:applyTemplates select="$nav/body/menu[not(@type)] | $nav/body/search"/>
<jsl:applyTemplates select="$projectNav/body/menu"/>
<jsl:applyTemplates select="$nav/body/[EMAIL PROTECTED]'footer']"/>


This means that any menu of type "header" comes before "no type" or search, which comes before the type footer.


This means that it doesn't matter the order for which they are added to the navigation.xml as entities and they can even be added to the navigation.xml as one entity and still show up either above or below the various project navigation and menu items added by the project.

-Mark

Mark R. Diggory wrote:

Dirk Verbeeck wrote:

Robert Burrell Donkin did the initial implementation of this
menus.dtd for the Betwixt site. (the current main site also uses it
and the sandbox components I mavenized as well)

I like the way you can put the "About Us" section above the "Commons
DBCP" without any special scripting. http://jakarta.apache.org/commons/dbcp/


Another advantage is that you can use/reuse different menus between
the main site and a component site.


I do not disagree that it is flexible. My concern is with maintaining
the "common section" throughout all the subproject sites so that it is
the same in each one, if component A and B can place the parts where ever
they want, then its going to be difficult to maintain a consistent
navigational model for the entire commons. Consistency is important so
users know who to get around the site from within any project.

The site.jsl gives us a full opportunity to adjust where specific
navigation items show up in the navigation without each individual site
needing to configure the "entities" in the navigation.xml

If you want to see specific ordering or toggling of menus to be
shown/not shown, it can be controlled globally across all the sites from
one location. The top level navigation.xml can have specific items within it, while the subproject navigations can be configured to only have specific "global" items we designate show up there. The project can still add whatever custom menus they want, but they appear in a specific portion of the navigation and cannot alter the global menus.



For example the "View CVS" and "Download" menus are usefull on the
main site but on the DBCP site they aren't. There you have a specific
 downloads page: http://jakarta.apache.org/commons/dbcp/downloads.html


I think we can accomplish this while still maintaining a golobally consistent site navigation.


-Mark

-- Dirk


Henri Yandell wrote:


Heh. Looks like Dirk created/moved the menus.dtd the other day.

Any reason why we should be using menus.dtd Dirk?

Betwixt, Pool, Launcher and DBCP are using it.

Hen

On Sun, 29 Feb 2004, Stephen Colebourne wrote:


As I started looking at updating some of the websites, I realised
 that we have two competing approaches: - incl_nav.xml -
menus.dtd

I have been updating everything to use the former, but I suspect
 others may be updating towards the latter. Have we agreed on
which to use? If so, can we mark the other as deprecated in the
file ;-)

Stephen



-- Mark Diggory Software Developer Harvard MIT Data Center http://www.hmdc.harvard.edu

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to