6.0.0-beta1
7/5/25

[#12050] Dynamic view folder list won't load when special folders have subfolders
Summary Dynamic view folder list won't load when special folders have subfolders
Queue IMP
Queue Version 6.0.4
Type Bug
State Resolved
Priority 1. Low
Owners slusarz (at) horde (dot) org
Requester bert (at) fraterman (dot) org
Created 02/16/2013 (4522 days ago)
Due
Updated 02/19/2013 (4519 days ago)
Assigned 02/17/2013 (4521 days ago)
Resolved 02/19/2013 (4519 days ago)
Github Issue Link
Github Pull Request
Milestone
Patch No

History
02/19/2013 06:03:14 AM Michael Slusarz Comment #8
Version ⇒ 6.0.4
Queue ⇒ IMP
State ⇒ Resolved
Reply to this comment
IMP 6.0.5
02/19/2013 06:02:40 AM Michael Slusarz Deleted Original Message
 
02/19/2013 06:02:31 AM Git Commit Comment #7 Reply to this comment
Changes have been made in Git (master):

commit c7805744696beb18993461a4e12867eb93e31905
Author: Michael M Slusarz <slusarz@horde.org>
Date:   Mon Feb 18 23:02:09 2013 -0700

     [mms] Fix possible issue creating folder tree if multiple special 
mailboxes appeared in the same branch (Bug #12050).

  imp/docs/CHANGES      |    2 ++
  imp/lib/Imap/Tree.php |   17 ++++++++++++-----
  imp/package.xml       |    4 ++--
  3 files changed, 16 insertions(+), 7 deletions(-)

http://git.horde.org/horde-git/-/commit/c7805744696beb18993461a4e12867eb93e31905
02/18/2013 10:49:52 PM bert (at) fraterman (dot) org Comment #6
New Attachment: requests.zip
Reply to this comment
I've attached a zip file with 2 traces with the body of the 
listMailboxes AJAX call.
Missed attachment
02/18/2013 10:48:39 PM bert (at) fraterman (dot) org Comment #5 Reply to this comment
All of these should work, and I can't reproduce locally.

Pretty much will need to see the data sent to the browser used to 
build the mailbox tree.  In IMP 6.0 this should be the return from 
the listMailboxes AJAX call.  You can use something like Firebug to 
grab this information.  If it is private, you can attach the ticket 
and make it visible only to the Horde developers.
I've drilled it down a bit further, these are the steps to reproduce 
with a new folder:
- 2 Identities (for example: A and B)
- A and B have their sent items folder assigned to 'Sent Items'
- Start with no subfolders under 'Sent Items'
- Create a subfolder 'foo' under 'Sent Items'
- Create a subfolder 'Bar' under 'foo'
- Folder list still loads correctly (good_request.txt in attachment)
- Assign id B sent items to 'foo'
- Folder list won't load (bad_request.txt in attachment)

When I add more subfolders under 'Sent Items', the folder list will 
load correctly.

I've attached a zip file with 2 traces with the body of the 
listMailboxes AJAX call.
02/18/2013 01:14:36 AM Michael Slusarz Comment #4 Reply to this comment
What is special and non-special? Does special mean it's assigned as 
a sent items folder to an identity?
"Special" means a mailbox identified with some sort of advanced MUA 
function.  i.e. templates, sent-mail, drafts, spam, trash
However, I have a Sent.bar folder that existed before the upgrade. 
This folder has multiple subfolders, which also existed before the 
update. When I remove the subfolders, the folder list displays. When 
I add a new subfolder to Sent.bar, the folder list won't display 
anymore.

Is there anything stored horde-specific in the imap folder that 
hasn't been updated in the upgrade?
No.

[Show Quoted Text - 16 lines]
All of these should work, and I can't reproduce locally.

Pretty much will need to see the data sent to the browser used to 
build the mailbox tree.  In IMP 6.0 this should be the return from the 
listMailboxes AJAX call.  You can use something like Firebug to grab 
this information.  If it is private, you can attach the ticket and 
make it visible only to the Horde developers.
02/18/2013 12:16:33 AM bert (at) fraterman (dot) org Comment #3 Reply to this comment
What is special and non-special? Does special mean it's assigned as a 
sent items folder to an identity?

It's probably also relevant that I upgraded from horde 4 to 5.
When I create a new subfolder under Sent, and assign it to an 
identity, it works fine. It still works fine if I create subfolders 
under that folder. So I cannot reproduce it either with a newly 
created folder.

However, I have a Sent.bar folder that existed before the upgrade. 
This folder has multiple subfolders, which also existed before the 
update. When I remove the subfolders, the folder list displays. When I 
add a new subfolder to Sent.bar, the folder list won't display anymore.

Is there anything stored horde-specific in the imap folder that hasn't 
been updated in the upgrade?

I have (folder list won't display):
Sent (assigned to identity 1)
Sent.bar (assigned to identity 2) (created before upgrading to horde 5)
Sent.bar.foo (not assigned to any identity) (created before upgrading 
to horde 5)
Sent.bar.foo2 (not assigned to any identity)
Sent.bar.foo3 (not assigned to any identity)

This also doesn't work:
Sent (assigned to identity 1)
Sent.bar (assigned to identity 2) (created before upgrading to horde 5)
Sent.bar.newfoo (not assigned to any identity) (newly created)

This works:
Sent (assigned to identity 1)
Sent.bar (assigned to identity 2) (created before upgrading to horde 5)

Perhaps it's a small upgrading bug and I should just use a new folder. 
But I didn't expect older imap folders would cause trouble after an 
upgrade.

[Show Quoted Text - 13 lines]
02/17/2013 10:16:34 PM Michael Slusarz Comment #2
Assigned to Michael Slusarz
Summary ⇒ Dynamic view folder list won't load when special folders have subfolders
State ⇒ Feedback
Priority ⇒ 1. Low
Reply to this comment
I can't reproduce.  I have the following setup:

Sent (special)
Sent.horde (special)

and this displays fine.  I added both of these mailboxes:

Sent.foo (non-special)
Sent.horde.foo (non-special)

and it continues to display fine.

What is your mailbox structure that is causing issues?
02/16/2013 12:44:12 AM bert (at) fraterman (dot) org Comment #1
Patch ⇒ No
State ⇒ Unconfirmed
Milestone ⇒
Queue ⇒ Horde Groupware
Summary ⇒ DIMP folder list won't load when special folders have subfolders
Type ⇒ Bug
Priority ⇒ 2. Medium
Reply to this comment
When a special folder, like 'Sent items' has subfolders, the folder 
list in DIMP will remain at 'loading' and will never display any 
folders.

I've tracked down the bug to a javascript exception thrown:
Exception: TypeError: parent_e is null
And the source:
dimpbase.js:3207
f_node = parent_e.childElements().find(function(node) {


parent_e is nullified in code block in dimpbase.js:3197
if (!ob.s) {
        div.addClassName(ob.ch ? 'exp' : (ob.cl || 'folderImg'));
        parent_e = ob.pa
                ? this.getSubMboxElt(ob.pa)
                : $('imp-normalmboxes');
}

In this.getSubMboxElt(ob.pa) it looks like it's trying to display 
subfolders which aren't loaded by the imp/listmailboxes call.

Saved Queries