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