Aleksander Machniak
2013-12-22 6b2b2eca5fa48720c4e5b31b9aae200a185dfc0e
program/include/rcmail.php
@@ -413,6 +413,9 @@
    $this->output->set_env('comm_path', $this->comm_path);
    $this->output->set_charset(RCUBE_CHARSET);
    if ($this->user && $this->user->ID)
      $this->output->set_env('user_id', $this->user->get_hash());
    // add some basic labels to client
    $this->output->add_label('loading', 'servererror', 'requesttimedout', 'refreshing');
@@ -1279,13 +1282,22 @@
        }
        else {
            $js_mailboxlist = array();
            $out = html::tag('ul', $attrib, $rcmail->render_folder_tree_html($a_mailboxes, $mbox_name, $js_mailboxlist, $attrib), html::$common_attrib);
            $tree = $rcmail->render_folder_tree_html($a_mailboxes, $mbox_name, $js_mailboxlist, $attrib);
            $rcmail->output->include_script('treelist.js');
            $rcmail->output->add_gui_object('mailboxlist', $attrib['id']);
            if ($type != 'js') {
                $out = html::tag('ul', $attrib, $tree, html::$common_attrib);
                $rcmail->output->include_script('treelist.js');
                $rcmail->output->add_gui_object('mailboxlist', $attrib['id']);
                $rcmail->output->set_env('unreadwrap', $attrib['unreadwrap']);
                $rcmail->output->set_env('collapsed_folders', (string)$rcmail->config->get('collapsed_folders'));
            }
            $rcmail->output->set_env('mailboxes', $js_mailboxlist);
            $rcmail->output->set_env('unreadwrap', $attrib['unreadwrap']);
            $rcmail->output->set_env('collapsed_folders', (string)$rcmail->config->get('collapsed_folders'));
            // we can't use object keys in javascript because they are unordered
            // we need sorted folders list for folder-selector widget
            $rcmail->output->set_env('mailboxes_list', array_keys($js_mailboxlist));
        }
        return $out;
@@ -1470,8 +1482,12 @@
            $jslist[$folder['id']] = array(
                'id'      => $folder['id'],
                'name'    => $foldername,
                'virtual' => $folder['virtual']
                'virtual' => $folder['virtual'],
            );
            if (!empty($folder_class)) {
                $jslist[$folder['id']]['class'] = $folder_class;
            }
            if (!empty($folder['folders'])) {
                $out .= html::tag('ul', array('style' => ($is_collapsed ? "display:none;" : null)),
@@ -1627,7 +1643,7 @@
        $rcmail->output->add_script('rcmail.set_quota('.rcube_output::json_serialize($quota).');', 'docready');
        return html::span($attrib, '');
        return html::span($attrib, ' ');
    }
@@ -1854,7 +1870,7 @@
        }
        $this->output->set_env('max_filesize', $max_filesize);
        $max_filesize = self::show_bytes($max_filesize);
        $max_filesize = $this->show_bytes($max_filesize);
        $this->output->set_env('filesizeerror', $this->gettext(array(
            'name' => 'filesizeerror', 'vars' => array('size' => $max_filesize))));