xref: /dokuwiki/inc/Action/Plugin.php (revision a3f6fae668f2438bb3018620d664a9e7f1e6cd21)
1<?php
2
3namespace dokuwiki\Action;
4
5/**
6 * Class Plugin
7 *
8 * Used to run action plugins
9 *
10 * @package dokuwiki\Action
11 */
12class Plugin extends AbstractAction {
13
14    /** @inheritdoc */
15    function minimumPermission() {
16        return AUTH_NONE;
17    }
18
19    /**
20     * Outputs nothing but a warning unless an action plugin overwrites it
21     *
22     * @inheritdoc
23     * @triggers TPL_ACT_UNKNOWN
24     */
25    public function tplContent() {
26        $evt = new \Doku_Event('TPL_ACT_UNKNOWN', $this->actionname);
27        if($evt->advise_before()) {
28            msg('Failed to handle action: ' . hsc($this->actionname), -1);
29        }
30        $evt->advise_after();
31    }
32
33    /**
34     * Set the action name
35     *
36     * This class handles arbitrary names by passing them to action plugins
37     * later in tplContent(). The actual name (=$ACT) is via this function
38     * in ActionRouter::setupAction()
39     *
40     * @param string $actionname
41     */
42    public function setActionName($actionname) {
43        $this->actionname = $actionname;
44    }
45}
46