diff options
author | alecpl <alec@alec.pl> | 2011-05-06 08:14:48 +0000 |
---|---|---|
committer | alecpl <alec@alec.pl> | 2011-05-06 08:14:48 +0000 |
commit | 94bdcce081eb4b080fcaab74bc8466237c2dfcd4 (patch) | |
tree | d33924327064cc1eb69a49b1fe42f5a835bd3832 /program/include/main.inc | |
parent | de0a3f9b9f38c374dae043c25404bbb957ea448a (diff) |
- Add possibility (for plugins) to filter folders lists by some additional criteria (e.g. folder type)
Diffstat (limited to 'program/include/main.inc')
-rw-r--r-- | program/include/main.inc | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/program/include/main.inc b/program/include/main.inc index baaca654d..00069c2a2 100644 --- a/program/include/main.inc +++ b/program/include/main.inc @@ -1170,13 +1170,16 @@ function rcmail_mailbox_list($attrib) if ($type=='ul' && !$attrib['id']) $attrib['id'] = 'rcmboxlist'; + if (empty($attrib['folder_name'])) + $attrib['folder_name'] = '*'; + // get mailbox list $mbox_name = $RCMAIL->imap->get_mailbox_name(); // build the folders tree if (empty($a_mailboxes)) { // get mailbox list - $a_folders = $RCMAIL->imap->list_mailboxes(); + $a_folders = $RCMAIL->imap->list_mailboxes('', $attrib['folder_name'], $attrib['folder_filter']); $delimiter = $RCMAIL->imap->get_hierarchy_delimiter(); $a_mailboxes = array(); @@ -1223,10 +1226,13 @@ function rcmail_mailbox_select($p = array()) $p += array('maxlength' => 100, 'realnames' => false); $a_mailboxes = array(); + if (empty($p['folder_name'])) + $p['folder_name'] = '*'; + if ($p['unsubscribed']) - $list = $RCMAIL->imap->list_unsubscribed(); + $list = $RCMAIL->imap->list_unsubscribed('', $p['folder_name'], $p['folder_filter']); else - $list = $RCMAIL->imap->list_mailboxes(); + $list = $RCMAIL->imap->list_mailboxes('', $p['folder_name'], $p['folder_filter']); $delimiter = $RCMAIL->imap->get_hierarchy_delimiter(); |