xref: /plugin/acmenu/action.php (revision 54803193dd6a35e3e9a462f4784f585554d0946c) !
19edee6f0STormec<?php
29edee6f0STormec/**
39edee6f0STormec * AcMenu plugin: an accordion menu for namespaces and relative pages.
49edee6f0STormec *
5*54803193Stormec * action.php: methods used by Acmenu plugin that interact with DokuWiki events.
69edee6f0STormec *
79edee6f0STormec * @author Torpedo <dcstoyanov@gmail.com>
89edee6f0STormec * @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
99edee6f0STormec * @package action
109edee6f0STormec */
119edee6f0STormec
129edee6f0STormec/**
13aac6d4b1Stormec * Defines the methods used by AcMenu plugin to interact with DokuWiki's events.
149edee6f0STormec *
159edee6f0STormec * @package action_pycode
169edee6f0STormec */
1703faacf7Stormecclass action_plugin_acmenu extends DokuWiki_Action_Plugin
1803faacf7Stormec{
199edee6f0STormec
209edee6f0STormec    /**
2185366d5fSTormec     * Register the event handlers
229edee6f0STormec     */
2303faacf7Stormec    function register(Doku_Event_Handler $controller)
2403faacf7Stormec    {
251aca2908STormec        $controller->register_hook("DOKUWIKI_STARTED", "AFTER",  $this, "_add_user_conf", array());
269edee6f0STormec    }
279edee6f0STormec
289edee6f0STormec    /**
2985366d5fSTormec     * Add some user's configuration to the $JSINFO variable.
309edee6f0STormec     *
317d544d5bStormec     * @param object $event
327d544d5bStormec     *      the event object
337d544d5bStormec     * @param array $param
347d544d5bStormec     *      data passed when this handler was registered
359edee6f0STormec     */
3603faacf7Stormec    function _add_user_conf(Doku_Event $event, $param)
3703faacf7Stormec    {
389edee6f0STormec        global $conf;
391ec44014STormec        global $INFO;
409edee6f0STormec        global $JSINFO;
41bfcd2fd3STorMec        $JSINFO["plugin_acmenu"]["doku_base"] = DOKU_BASE;
42bfcd2fd3STorMec        $JSINFO["plugin_acmenu"]["doku_url"] = DOKU_URL;
43bfcd2fd3STorMec        $JSINFO["plugin_acmenu"]["doku_script"] = DOKU_SCRIPT;
44bfcd2fd3STorMec        $JSINFO["plugin_acmenu"]["start"] = $conf["start"];
45bfcd2fd3STorMec        $JSINFO["plugin_acmenu"]["useslash"] = $conf["useslash"];
46bfcd2fd3STorMec        $JSINFO["plugin_acmenu"]["canonical"] = $conf["canonical"];
47bfcd2fd3STorMec        $JSINFO["plugin_acmenu"]["userewrite"] = $conf["userewrite"];
48774ba260STormec        // namespace genealogy doesn't exist for an id deleated
49774ba260STormec        if(isset($INFO["meta"]["plugin"]["plugin_acmenu"]["sub_ns"])) {
50bfcd2fd3STorMec            $JSINFO["plugin_acmenu"]["sub_ns"] = $INFO["meta"]["plugin"]["plugin_acmenu"]["sub_ns"];
519edee6f0STormec        }
529edee6f0STormec    }
53774ba260STormec}
54