xref: /plugin/authskautis/action.php (revision c297a794abfb150d90e4729245f34eb1436e916e)
1a4ff4e44SJiri Dorazil<?php
2a4ff4e44SJiri Dorazilif (!defined('DOKU_INC')) die();
3a4ff4e44SJiri Dorazil
4a4ff4e44SJiri Dorazildefine('SKAUTIS_LIBS_DIR', dirname(__FILE__).'/libs/');
58a605c6dSJiri Dorazilrequire_once SKAUTIS_LIBS_DIR. 'skautis-minify.php';
68a605c6dSJiri Dorazil
7a4ff4e44SJiri Dorazil
8a4ff4e44SJiri Dorazilclass action_plugin_authskautis extends DokuWiki_Action_Plugin {
98a605c6dSJiri Dorazil
108a605c6dSJiri Dorazil    protected $url;
118a605c6dSJiri Dorazil    protected $testUrl;
128a605c6dSJiri Dorazil
13a4ff4e44SJiri Dorazil    /**
14a4ff4e44SJiri Dorazil     * Registers the event handlers.
15a4ff4e44SJiri Dorazil     */
16*c297a794SJan Staněk    function register(Doku_Event_Handler $controller)
17a4ff4e44SJiri Dorazil    {
18a4ff4e44SJiri Dorazil        $controller->register_hook('HTML_LOGINFORM_OUTPUT', 'BEFORE',  $this, 'hook_html_loginform_output', array());
1938848c94SJiri Dorazil        $controller->register_hook('HTML_UPDATEPROFILEFORM_OUTPUT', 'BEFORE', $this, 'hook_updateprofileform_output', array());
20a4ff4e44SJiri Dorazil    }
21a4ff4e44SJiri Dorazil
2238848c94SJiri Dorazil    function hook_updateprofileform_output(&$event, $param) {
2338848c94SJiri Dorazil        global $USERINFO;
2438848c94SJiri Dorazil
2538848c94SJiri Dorazil        if ($USERINFO['is_skautis']) {
2638848c94SJiri Dorazil            $elem = $event->data->getElementAt(2);
2738848c94SJiri Dorazil            $elem['disabled'] = 'disabled';
2838848c94SJiri Dorazil            $event->data->replaceElement(2, $elem);
2938848c94SJiri Dorazil
3038848c94SJiri Dorazil            $elem = $event->data->getElementAt(3);
3138848c94SJiri Dorazil            $elem['disabled'] = 'disabled';
3238848c94SJiri Dorazil            $event->data->replaceElement(3, $elem);
3338848c94SJiri Dorazil
3438848c94SJiri Dorazil            $event->data->replaceElement(10, null);
3538848c94SJiri Dorazil            $event->data->replaceElement(9, null);
3638848c94SJiri Dorazil            $event->data->replaceElement(8, null);
3738848c94SJiri Dorazil            $event->data->replaceElement(7, null);
3838848c94SJiri Dorazil            $event->data->replaceElement(6, null);
3938848c94SJiri Dorazil            $event->data->replaceElement(5, null);
4038848c94SJiri Dorazil            $event->data->replaceElement(4, null);
4138848c94SJiri Dorazil        }
4238848c94SJiri Dorazil    }
4338848c94SJiri Dorazil
4438848c94SJiri Dorazil
45a4ff4e44SJiri Dorazil    /**
46a4ff4e44SJiri Dorazil     * Handles the login form rendering.
47a4ff4e44SJiri Dorazil     */
48a4ff4e44SJiri Dorazil    function hook_html_loginform_output(&$event, $param) {
49a4ff4e44SJiri Dorazil
50*c297a794SJan Staněk        $this->url = Skautis\Config::URL_PRODUCTION . 'Login/?appid=';
51*c297a794SJan Staněk        $this->testUrl = Skautis\Config::URL_TEST . 'Login/?appid=';
52a4ff4e44SJiri Dorazil
538a605c6dSJiri Dorazil        $skautisAppId = $this->getConf('skautis_app_id');
54748d8f2cSJiri Dorazil        if($skautisAppId!=''){
558a605c6dSJiri Dorazil            $skautIsTestmode = $this->getConf('skautis_test_mode');
568a605c6dSJiri Dorazil            if ($skautIsTestmode){
578a605c6dSJiri Dorazil                $auth_url = $this->testUrl.$skautisAppId;
588a605c6dSJiri Dorazil            } else {
598a605c6dSJiri Dorazil                $auth_url = $this->url.$skautIsTestmode;
608a605c6dSJiri Dorazil            }
618a605c6dSJiri Dorazil
62a4ff4e44SJiri Dorazil
63a4ff4e44SJiri Dorazil            $a_style = "width: 200px;margin:0 auto;color: #666666;cursor: pointer;text-decoration: none !important;display: block;padding-bottom:1.4em;";//-moz-linear-gradient(center top , #F8F8F8, #ECECEC)
64a4ff4e44SJiri Dorazil            $div_style = "float:left;line-height: 30px;background-color: #F8F8F8;border: 1px solid #C6C6C6;border-radius: 2px 2px 2px 2px;padding: 0px 5px 0px 5px;position: relative;";
65ed298b49SJiri Dorazil            echo "<a href='$auth_url' style='$a_style' title='".$this->getLang('enter_skautis')."'><div style=\"$div_style\">".$this->getLang('enter_skautis')."</div>";
66a4ff4e44SJiri Dorazil            echo "<div style='clear: both;'></div></a>";
67a4ff4e44SJiri Dorazil        }
68a4ff4e44SJiri Dorazil    }
69748d8f2cSJiri Dorazil}
70a4ff4e44SJiri Dorazil
71a4ff4e44SJiri Dorazil?>