1<?php 2/** 3 * DokuWiki Plugin structgantt (Action Component) 4 * 5 * @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html 6 * @author Andreas Gohr <dokuwiki@cosmocode.de> 7 */ 8 9 10// must be run within Dokuwiki 11if(!defined('DOKU_INC')) die(); 12 13class action_plugin_structgantt extends DokuWiki_Action_Plugin { 14 15 /** 16 * Registers a callback function for a given event 17 * 18 * @param Doku_Event_Handler $controller DokuWiki's event controller object 19 * @return void 20 */ 21 public function register(Doku_Event_Handler $controller) { 22 $controller->register_hook('PLUGIN_STRUCT_CONFIGPARSER_UNKNOWNKEY', 'BEFORE', $this, 'handle_configparser'); 23 } 24 25 /** 26 * Add our own config keys 27 * 28 * @param Doku_Event $event event object by reference 29 * @param mixed $param [the parameters passed as fifth argument to register_hook() when this 30 * handler was registered] 31 */ 32 public function handle_configparser(Doku_Event $event, $param) { 33 if(!in_array($event->data['key'], array('skipweekend', 'skipweekends'))) return; 34 $event->preventDefault(); 35 $event->stopPropagation(); 36 $event->data['config']['skipweekends'] = (bool) $event->data['val']; 37 } 38 39} 40