xref: /template/strap/action/identity.php (revision c3437056399326d621a01da73b649707fbb0ae69)
1*c3437056SNickeau<?php
2*c3437056SNickeau
3*c3437056SNickeaurequire_once(__DIR__ . '/../ComboStrap/PluginUtility.php');
4*c3437056SNickeau
5*c3437056SNickeauuse ComboStrap\Identity;
6*c3437056SNickeau
7*c3437056SNickeau
8*c3437056SNickeau/**
9*c3437056SNickeau *
10*c3437056SNickeau */
11*c3437056SNickeauclass action_plugin_combo_identity extends DokuWiki_Action_Plugin
12*c3437056SNickeau{
13*c3437056SNickeau
14*c3437056SNickeau
15*c3437056SNickeau    public function register(Doku_Event_Handler $controller)
16*c3437056SNickeau    {
17*c3437056SNickeau
18*c3437056SNickeau        /**
19*c3437056SNickeau         * Add logged in indicator for Javascript
20*c3437056SNickeau         */
21*c3437056SNickeau        $controller->register_hook('DOKUWIKI_STARTED', 'AFTER', $this, 'handleAnonymousJsIndicator');
22*c3437056SNickeau
23*c3437056SNickeau
24*c3437056SNickeau    }
25*c3437056SNickeau
26*c3437056SNickeau
27*c3437056SNickeau
28*c3437056SNickeau
29*c3437056SNickeau
30*c3437056SNickeau    /**
31*c3437056SNickeau     * @noinspection SpellCheckingInspection
32*c3437056SNickeau     * Adding an information to know if the user is signed or not
33*c3437056SNickeau     */
34*c3437056SNickeau    function handleAnonymousJsIndicator(&$event, $param)
35*c3437056SNickeau    {
36*c3437056SNickeau
37*c3437056SNickeau        global $JSINFO;
38*c3437056SNickeau        if (!Identity::isLoggedIn()) {
39*c3437056SNickeau            $navigation = Identity::JS_NAVIGATION_ANONYMOUS_VALUE;
40*c3437056SNickeau        } else {
41*c3437056SNickeau            $navigation = Identity::JS_NAVIGATION_SIGNED_VALUE;
42*c3437056SNickeau        }
43*c3437056SNickeau        $JSINFO[Identity::JS_NAVIGATION_INDICATOR] = $navigation;
44*c3437056SNickeau
45*c3437056SNickeau
46*c3437056SNickeau    }
47*c3437056SNickeau
48*c3437056SNickeau
49*c3437056SNickeau}
50