DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:acmenu

AcMenu Plugin

Compatible with DokuWiki

  • 2017-02-19 "Frusterick Manners" yes
  • 2016-06-26 "Elenor Of Tsort" unknown
  • 2015-08-10 "Detritus" unknown
  • 2014-09-29 "Hrun" unknown

plugin An accordion menu for namespaces and relative pages.

Last updated on
2017-03-20
Provides
Syntax
Repository
Source

Tagged with menu, navigation

Description

AcMenu provides an accordion menu which lists contents of namespaces in a tree-like format. The tree is built starting from the namespace where the AcMenu's syntax lives till the very end namespace.

This plugin respects the ACL rules and the sneaky_index, hidepages options that come with your DokuWiki configuration.

Installation

Install the plugin using the Plugin Manager and the download URL above, which points to latest version of the plugin. Refer to Plugins on how to install plugins manually.

Syntax

In the sidebar page, use the syntax:

<acmenu>

Examples

Just some screenshots to give you an overall idea of the final result.

Suppose you want to split your main wiki in two sub-wiki independent between them, as follows:

+--sidebar.txt
+--start.txt
+--branch-a
|  +--sidebar.txt
|  +--start.txt
|  +--products
|  |  +--start.txt
|  +--services
|  |  +--start.txt
|  +--private
|     +--start.txt
|     +--secret.txt
+--branch-b
   +--sidebar.txt
   +--start.txt
   +--products
   |  +--start.txt
   +--services
   |  +--start.txt
   +--private
      +--start.txt
      +--secret.txt

Than you can populate each sidebar.txt in the following manner:

  • in :sidebar.txt
    <acmenu>
  • in :branch-a:sidebar.txt
    [[..:| Back to Main]]
    <acmenu>
  • in :branch-b:sidebar.txt
    [[..:| Back to Main]]
    <acmenu>

When a visitor is in :sidebar.txt, the AcMenu shows the complete tree namespace.

If the visitor decides to open a :branch-* or any its sub-namespaces :branch-*:*, the AcMenu shows only the sidebar relative to the current branch.

If the visitor is a guest and he doesn't have the permission to enter in any :branch-*:private area, you should set the appropriate rule in the ACL managment. Furthermore you can hide to him the :branch-*:private namespace setting up the sneaky_index option in your Configuration Manager.

If the visitor is a user registered and has the permission to enter in any :branch-*:private area but not to see the :branch-*:secret.txt page, you should set the appropriate rule in the ACL management.

Furthermore you can hide all sidebar.txt page using the hidepages option in your Configuration Manager:

^:(?:.*sidebar)

Configuration and Settings

The navigation through namespaces and the links to the relative pages work as follows:

  • on namespace:
    • one click: shows/hides the relative content;
    • double click: opens the relative start page;
  • on page:
    • one click: opens the relative page.

Hide namespaces and pages

First, set the appropriate permissions in your ACL management. Then, use the options:

Troubleshooting

Symptom: AcMenu doesn't show/hide namespace's content.

Possible solution: be sure that javascript is enabled in your browser, otherwise all namespaces remain open showing their content.


Development

Known Bugs and Issues

Please, use the relative bug tracker or write here and then I will move there.

Torpedo 2017-03-09 16:32

ToDo/Wish List

Let me know what do you think about this plugin and how can I improve its functionality.

Torpedo 2017-03-09 16:33

plugin/acmenu.txt · Last modified: 2017-03-20 08:00 by torpedo