Fix expanded folders view
authorMichael M Slusarz <slusarz@curecanti.org>
Wed, 25 Aug 2010 21:39:26 +0000 (15:39 -0600)
committerMichael M Slusarz <slusarz@curecanti.org>
Wed, 25 Aug 2010 21:42:49 +0000 (15:42 -0600)
imp/folders.php
imp/lib/Imap/Tree.php

index e4aaee1..1b82ee5 100644 (file)
@@ -396,10 +396,7 @@ $a_template->set('expand_all', Horde::widget($folders_url_ob->copy()->add(array(
 $a_template->set('collapse_all', Horde::widget($folders_url_ob->copy()->add(array('actionID' => 'collapse_all_folders', 'folders_token' => $folders_token)), _("Collapse All Folders"), 'widget', '', '', _("Collapse All"), true));
 
 /* Build the folder tree. */
-// TODO: Javascript JSON loading
-//$imaptree->setIteratorFilter(IMP_Imap_Tree::FLIST_VFOLDER | IMP_Imap_Tree::FLIST_EXPANDED);
 $imaptree->setIteratorFilter(IMP_Imap_Tree::FLIST_VFOLDER);
-
 $tree = $imaptree->createTree('imp_folders', array(
     'checkbox' => true,
     'editvfolder' => true,
index 4e6d96e..e49aa78 100644 (file)
@@ -1512,11 +1512,13 @@ class IMP_Imap_Tree implements ArrayAccess, Iterator
 
             switch ($opts['render_type']) {
             case 'IMP_Tree_Flist':
+                $is_open = true;
                 $label = $val->name;
                 $params['orig_label'] = $val->label;
                 break;
 
             case 'Javascript':
+                $is_open = $val->is_open;
                 $label = $val->name;
                 $icon = $val->icon;
                 $params['icon'] = $icon->icon;
@@ -1524,6 +1526,7 @@ class IMP_Imap_Tree implements ArrayAccess, Iterator
                 break;
 
             case 'Simplehtml':
+                $is_open = true;
                 $label = htmlspecialchars(Horde_String::abbreviate($val->label, 30 - ($val->level * 2)));
                 break;
             }
@@ -1572,7 +1575,7 @@ class IMP_Imap_Tree implements ArrayAccess, Iterator
                 ($val->level) ? strval($parent) . $val->parent : $parent,
                 $label,
                 $indent + $val->level,
-                ($this->_cache['filter']['mask'] & self::FLIST_EXPANDED) ? $val->is_open : true,
+                $is_open,
                 $params,
                 $after,
                 empty($opts['checkbox']) ? null : $checkbox . ' />'