xref: /plugin/todo/action.php (revision 63314d65712f1adc68da8cdacf392664edfd7023)
1*63314d65SLeo Eibler<?php
2*63314d65SLeo Eibler
3*63314d65SLeo Eibler/**
4*63314d65SLeo Eibler * ToDo Action Plugin: Inserts button for ToDo plugin into toolbar
5*63314d65SLeo Eibler *
6*63314d65SLeo Eibler * Original Example: http://www.dokuwiki.org/devel:action_plugins
7*63314d65SLeo Eibler * @author     Babbage <babbage@digitalbrink.com>
8*63314d65SLeo Eibler */
9*63314d65SLeo Eibler
10*63314d65SLeo Eiblerif (!defined('DOKU_INC')) die();
11*63314d65SLeo Eiblerif (!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN', DOKU_INC . 'lib/plugins/');
12*63314d65SLeo Eiblerrequire_once (DOKU_PLUGIN . 'action.php');
13*63314d65SLeo Eibler
14*63314d65SLeo Eiblerclass action_plugin_todo extends DokuWiki_Action_Plugin {
15*63314d65SLeo Eibler
16*63314d65SLeo Eibler	/**
17*63314d65SLeo Eibler	 * Return some info
18*63314d65SLeo Eibler	 */
19*63314d65SLeo Eibler	function getInfo() {
20*63314d65SLeo Eibler		return array (
21*63314d65SLeo Eibler			'author' => 'Babbage',
22*63314d65SLeo Eibler			'email' => 'babbage@digitalbrink.com',
23*63314d65SLeo Eibler			'date' => '2010-02-27',
24*63314d65SLeo Eibler			'name' => 'ToDo Action Plugin',
25*63314d65SLeo Eibler			'desc' => 'Inserts a ToDo button into the editor toolbar',
26*63314d65SLeo Eibler			'url' => 'http://www.dokuwiki.org/plugin:todo',
27*63314d65SLeo Eibler
28*63314d65SLeo Eibler		);
29*63314d65SLeo Eibler	}
30*63314d65SLeo Eibler
31*63314d65SLeo Eibler	/**
32*63314d65SLeo Eibler	 * Register the eventhandlers
33*63314d65SLeo Eibler	 */
34*63314d65SLeo Eibler	function register(&$controller) {
35*63314d65SLeo Eibler		$controller->register_hook('TOOLBAR_DEFINE', 'AFTER', $this, 'insert_button', array ());
36*63314d65SLeo Eibler	}
37*63314d65SLeo Eibler
38*63314d65SLeo Eibler	/**
39*63314d65SLeo Eibler	 * Inserts the toolbar button
40*63314d65SLeo Eibler	 */
41*63314d65SLeo Eibler	function insert_button(&$event, $param) {
42*63314d65SLeo Eibler		$event->data[] = array(
43*63314d65SLeo Eibler			'type'   => 'format',
44*63314d65SLeo Eibler			'title'  => $this->getLang('qb_todobutton'),
45*63314d65SLeo Eibler			'icon'   => '../../plugins/todo/todo.png',
46*63314d65SLeo Eibler			'key'    => 't',
47*63314d65SLeo Eibler			'open'   => '<todo>',
48*63314d65SLeo Eibler			'close'  => '</todo>',
49*63314d65SLeo Eibler		);
50*63314d65SLeo Eibler	}
51*63314d65SLeo Eibler
52*63314d65SLeo Eibler}
53