Thomas Bruederli
2015-04-17 a3644638aaf0418598196a870204e0b632a4c8ad
plugins/help/help.php
@@ -33,6 +33,12 @@
        $this->register_action('about', array($this, 'action'));
        $this->register_action('license', array($this, 'action'));
        $this->add_hook('startup', array($this, 'startup'));
        $this->add_hook('error_page', array($this, 'error_page'));
    }
    function startup($args)
    {
        $rcmail = rcmail::get_instance();
        // add taskbar button
@@ -77,8 +83,14 @@
    function tablink($attrib)
    {
        $rcmail = rcmail::get_instance();
        $attrib['name'] = 'helplink' . $attrib['action'];
        $attrib['href'] = $rcmail->url(array('_action' => $attrib['action'], '_extwin' => !empty($_REQUEST['_extwin']) ? 1 : null));
        // title might be already translated here, so revert to it's initial value
        // so button() will translate it correctly
        $attrib['title'] = $attrib['label'];
        return $rcmail->output->button($attrib);
    }
@@ -129,6 +141,16 @@
        return $rcmail->output->frame($attrib);
    }
    function error_page($args)
    {
        $rcmail = rcmail::get_instance();
        if ($args['code'] == 403 && $rcmail->request_status == rcube::REQUEST_ERROR_URL && ($url = $rcmail->config->get('help_csrf_info'))) {
            $args['text'] .= '<p>' . html::a(array('href' => $url, 'target' => '_blank'), $this->gettext('csrfinfo')) . '</p>';
        }
        return $args;
    }
    private function resolve_language($path)
    {