1 <?php 2 /** 3 * Action Component for the Webcode Plugin 4 * Add a button in the edit toolbar 5 * 6 * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) 7 * @author Nicolas GERARD 8 */ 9 10 // must be run within Dokuwiki 11 if(!defined('DOKU_INC')) die(); 12 13 if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); 14 require_once(DOKU_PLUGIN.'action.php'); 15 16 class action_plugin_webcode extends DokuWiki_Action_Plugin { 17 18 /** 19 * register the event handlers 20 * 21 * @param Doku_Event_Handler $controller 22 * @author Nicolas GERARD 23 */ 24 function register(Doku_Event_Handler $controller){ 25 $controller->register_hook('TOOLBAR_DEFINE', 'AFTER', $this, 'handle_toolbar', array ()); 26 } 27 28 function handle_toolbar(&$event, $param) { 29 $webCodeShortcutKey = $this->getConf('WebCodeShortCutKey'); 30 31 $event->data[] = array( 32 'type' => 'format', 33 'title' => $this->getLang('WebCodeButtonTitle').' ('.$this->getLang('AccessKey').': '.$webCodeShortcutKey.')', 34 'icon' => '../../plugins/webcode/images/webcode.png', 35 'open' => '<webcode name="Default" frameborder=0 width=100% scrolling=yes '.syntax_plugin_webcode_basis::EXTERNAL_RESOURCES_ATTRIBUTE_DISPLAY.'="," renderingMode=story >\n', 36 'close' => '\n</webcode>\n', 37 'key' => $webCodeShortcutKey 38 ); 39 40 41 } 42 43 } 44 45