Ever wanted to use a nice multi-level horizontal menu in your Vibe environment, but did not want the nightmare of having to keep it updated on every one of your landing pages?
Fear no more, SElp_menu-h.jsp is an easy JSP to integrate in your landing pages. It generates the menu on the fly. It even allows you to reorder the menu entries in what ever order you fancy AND drop whichever binders (that's workspace or folders) from the generated menu.
At this stage, call it version 1.0, SElp_menu-h.jsp requires only one thing from you, the binder ID of the 'home' binder, whether a folder or a workspace. Unfortunately, custom JSPs can be associated with folders and entries only, not workspaces (!?)*
The first step is to get the binder ID from the 'home' workspace. Go to your 'home' workspace, click on 'permalinks' at the bottom of its landing page and, from the displayed URL, note the binder ID.
Then go edit the landing page where you want to insert the horizontal menu. Drag 'Custom JSP' to the spot where the menu would make sense, drop it and enter the name of the custom jsp with just a little extra info. For example, if you saved SElp_menu-h.jsp at the root of the .../custom_jsps directory:
Where ##### is the binder ID you went looking for in the previous step.
That is IT. How easy was that?
Here is the fancy stuff though:
1) say you don't want the menu or its lower levels in alphanumerical order
That is easy. I have included a not too obstructive prefix which you can use to reorder binders of a particular level. You don't have to use it on all levels, just the one to be organised differently and only on the binders which need to move up and out of the alphanumerical order.
Name the title of those binders so they start, I did say it was a prefix, with a dot ("."), follow with whatever looks good on your site to force at sor (I use numbers), and close the prefix with a dot-space (". ") then have your regular binder title. That's it! Best of all, the menu will drop the prefix, the whole thing (".whatever you feel like using as a prefix. ") You see, alphanumerical order puts the "." high on the list ... ok, at least higher than the letters and numbers we would normally use to start a binder title.
2) say you don't want certain binders, wether workspaces or folders, to be included in the menu
This one was a bit tricker. Ya right ... Name the binder, whether a workspace or folder, so it has one or two "v" followed by at least one space. That's "v " or "vv ". I call it the drop down and out prefix. Why? It's close enough to the end of the ascii table to move those binders to bottom, well close to the bottom at least, it looks like a down arrow and, best of all, the SElp_menu-h.jsp will do an ignore! Those binders won't show up in your menu!
Where can I find this SElp_menu-h.jsp you ask? It should be an attachment to this entry ...
Can I see it at work, you ask? Sure go to http://vibe.csdecso.on.ca/MonseigneurAugustinCaron where you will see the end result. There will be 30 or so more school sites using my template & each might have a slightly different menu with no effort on anyone.
*Short term solution to not being able to associate a workspace to a custom JSP will be to use an association to a folder one level down and crawl back up the tree to get the parent binder ID. It's just as ugly as using the parameter.
But wait, I'll introduce you to SElp_folder_params.jsp for free in a day or so!
Bet you can't wait to find out what that one will do to your Vibe landing pages, eh?
Let's just say it will slice, dice and julienne your binders onto your landing pages with over 20 (yes) parameters. I was just tired of having to manage a series of slightly different jsps for tweaks... too much said!
Disclaimer: As with everything else at Cool Solutions, this content is definitely not supported by Novell (so don't even think of calling Support if you try something and it blows up).
It was contributed by a community member and is published "as is." It seems to have worked for at least one person, and might work for you. But please be sure to test, test, test before you do anything drastic with it.