Summary | new subfolder doesn't show in folder list |
Queue | IMP |
Queue Version | Git master |
Type | Bug |
State | Resolved |
Priority | 1. Low |
Owners | slusarz (at) horde (dot) org |
Requester | rsalmon (at) mbpgroup (dot) com |
Created | 12/09/2010 (5339 days ago) |
Due | |
Updated | 01/20/2011 (5297 days ago) |
Assigned | 12/09/2010 (5339 days ago) |
Resolved | 01/20/2011 (5297 days ago) |
Github Issue Link | |
Github Pull Request | |
Milestone | |
Patch | No |
State ⇒ Resolved
Bug #9349: Fix new subfolder doesn't show in folder listProblem only occurred if all (unsubscribed) folders are viewed.
hasChildren() was always returning true because we created the parent
element before making the initial hasChildren() check. Need to check
for children before this.
http://git.horde.org/horde-git/-/commit/245d08ddc7d2f1b0d72eee0b3f96ebc164534899
"create subfolder"). If the parent folder does not have any child,
the div container does not exist (like you said) and the created
folder will not appear until you refresh the page.
it is created when processing the JSON return. There should be a
'c' entry which causes the parent folder to be rebuilt.
courier-imap.
exclusive cause of the problem.
"create subfolder"). If the parent folder does not have any child,
the div container does not exist (like you said) and the created
folder will not appear until you refresh the page.
It is expected that the div container won't exist in this instance -
it is created when processing the JSON return. There should be a 'c'
entry which causes the parent folder to be rebuilt.
and a 'c' entry (the parent mailbox).
You (or someone else who can reproduce) will have to track down why
the 'c' entry is not being returned. This information is generated
via the trackdiff functionality in IMP_Imap_Tree.
Just in case this could be related to the IMAP server, we're using
courier-imap.
subfolders yet. The div container does not exists so getSubFolderId
return null.
when the parent folder reports it has children. This all works fine
for me.
"create subfolder"). If the parent folder does not have any child, the
div container does not exist (like you said) and the created folder
will not appear until you refresh the page.
After page refresh the behavior is just like you said and all works fine.
Assigned to Michael Slusarz
mbox=tettt&parent=INBOX.Test2.TEst.123
Response :
/*-secure-{"response":{"mailbox":{"a":[{"m":"INBOX.Test2.TEst.123.tettt","l":"tettt","pa":"INBOX.Test2.TEst.123","t":"Test2.TEst.123.tettt","cl":"folderImg"}]}},"msgs":[{"charset":"UTF-8","message":"Le dossier \u00ab\u00a0Test2.TEst.123.tettt\u00a0\u00bb a bien \u00e9t\u00e9 cr\u00e9\u00e9.","flags":[],"type":"horde.success"},{"charset":"UTF-8","message":"000","flags":{"alarm":{"id":"20101207131722.DSPTHIgBqn9M-iXSNGx3QLA@127.0.0.1","user":"rsalmon","start":{},"end":{},"methods":["notify"],"params":{"notify":{"show":{"__app":"kronolith","event":"J3QRYogBqn9M-iXSM__3QLA","calendar":"rsalmon"},"ajax":"event:internal|rsalmon:J3QRYogBqn9M-iXSM__3QLA:20101210","subtitle":"From <strong>10.12.2010 at 12:00<\/strong> to <strong>10.12.2010 at
13:00<\/strong>"}},"title":"000","text":null,"snooze":null,"internal":null}},"type":"horde.alarm"}]}*/
single added mailbox. But there also needs to be a "changed" mailbox
- namely the original mailbox (since it now contains children). e.g.:
POST :
mbox=b&parent=INBOX.test1
JSON Response:
/*-secure-{"response":{"mailbox":{"a":[{"m":"INBOX.test1.b","l":"b","pa":"INBOX.test1","t":"test1.b","cl":"folderImg"}],"c":[{"ch":1,"m":"INBOX.test1","l":"test1","t":"test1","cl":"folderImg"}]}},"msgs":[{"charset":"UTF-8","message":"The folder \"test1.b\" was successfully created.","flags":[],"type":"horde.success"},{"charset":"UTF-8","message":"You were successfully subscribed to
\"test1.b\"","flags":[],"type":"horde.success"}]}*/
As can be seen, my response has both an 'a' entry (the new mailbox)
and a 'c' entry (the parent mailbox).
You (or someone else who can reproduce) will have to track down why
the 'c' entry is not being returned. This information is generated
via the trackdiff functionality in IMP_Imap_Tree.
subfolders yet. The div container does not exists so getSubFolderId
return null.
when the parent folder reports it has children. This all works fine
for me.
subfolders yet. The div container does not exists so getSubFolderId
return null.
proper mailbox information and/or report any JS errors you see.
doActionComplete TypeError:
$(this.getSubFolderId(this.getFolderId(ob.pa))) is null {
message="$(this.getSubFolderId(t...lderId(ob.pa))) is null", more...}
dimpcore.js (ligne 33)
Stack = "([object
Object],0)@http://127.0.0.1/horde/imp/js/dimpbase.js:2698 ([object
Object],0)@http://127.0.0.1/horde/js/prototype.js:391 ([object
Object],0,[object Array])@http://127.0.0.1/horde/js/prototype.js:825
each((function () {var a = merge(args, arguments);return
__method.apply(context,
a);}))@http://127.0.0.1/horde/js/prototype.js:824 ([object
Object])@http://127.0.0.1/horde/imp/js/dimpbase.js:2386 ([object
Object])@http://127.0.0.1/horde/js/prototype.js:391 ([object
Object],(function () {var a = merge(args, arguments);return
__method.apply(context,
a);}))@http://127.0.0.1/horde/imp/js/dimpcore.js:193 ([object
Object],null)@http://127.0.0.1/horde/imp/js/dimpcore.js:126 ([object
Object],null)@http://127.0.0.1/horde/js/prototype.js:391
(4)@http://127.0.0.1/horde/js/prototype.js:1615 ([object
Event])@http://127.0.0.1/horde/js/prototype.js:1545 ([object
Event])@http://127.0.0.1/horde/js/prototype.js:391 handleEvent([object
Event])@:0 SJOWContentBoundary()@:0 "
POST :
mbox=tettt&parent=INBOX.Test2.TEst.123
Response :
/*-secure-{"response":{"mailbox":{"a":[{"m":"INBOX.Test2.TEst.123.tettt","l":"tettt","pa":"INBOX.Test2.TEst.123","t":"Test2.TEst.123.tettt","cl":"folderImg"}]}},"msgs":[{"charset":"UTF-8","message":"Le dossier \u00ab\u00a0Test2.TEst.123.tettt\u00a0\u00bb a bien \u00e9t\u00e9 cr\u00e9\u00e9.","flags":[],"type":"horde.success"},{"charset":"UTF-8","message":"000","flags":{"alarm":{"id":"20101207131722.DSPTHIgBqn9M-iXSNGx3QLA@127.0.0.1","user":"rsalmon","start":{},"end":{},"methods":["notify"],"params":{"notify":{"show":{"__app":"kronolith","event":"J3QRYogBqn9M-iXSM__3QLA","calendar":"rsalmon"},"ajax":"event:internal|rsalmon:J3QRYogBqn9M-iXSM__3QLA:20101210","subtitle":"From <strong>10.12.2010 at 12:00<\/strong> to <strong>10.12.2010 at
13:00<\/strong>"}},"title":"000","text":null,"snooze":null,"internal":null}},"type":"horde.alarm"}]}*/
State ⇒ Feedback
Look at the AJAX response and make sure the server is returning the
proper mailbox information and/or report any JS errors you see.
For further debugging information, please read the 'AJAX
Troubleshooting' section in imp/docs/INSTALL.
State ⇒ Unconfirmed
Patch ⇒ No
Milestone ⇒
Queue ⇒ IMP
Summary ⇒ new subfolder doesn't show in folder list
Type ⇒ Bug
Priority ⇒ 1. Low
create folder Test => folder list is updated and "Test" appears just fine.
right click on "Test" and "Create subfolder" Test2 => "Test2" is
created, but folder list is not updated.
If I "Rebuild Folder List", folder "Test2" appears.
This behaviour seems to happen on any folder that doesn't have any child.