aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/inc/Action/Denied.php
blob: ab2f0d8f40c405748ac3eada618ef2d897a9d8c5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<?php

namespace dokuwiki\Action;

use dokuwiki\Extension\Event;
use dokuwiki\Ui;

/**
 * Class Denied
 *
 * Show the access denied screen
 *
 * @package dokuwiki\Action
 */
class Denied extends AbstractAction
{
    /** @inheritdoc */
    public function minimumPermission()
    {
        return AUTH_NONE;
    }

    /** @inheritdoc */
    public function tplContent()
    {
        $this->showBanner();

        $data = null;
        $event = new Event('ACTION_DENIED_TPLCONTENT', $data);
        if ($event->advise_before()) {
            global $INPUT;
            if (empty($INPUT->server->str('REMOTE_USER')) && actionOK('login')) {
                (new Ui\Login)->show();
            }
        }
        $event->advise_after();
    }

    /**
     * Display error on denied pages
     *
     * @author   Andreas Gohr <andi@splitbrain.org>
     *
     * @return void
     */
    public function showBanner()
    {
        // print intro
        print p_locale_xhtml('denied');
    }

}