summaryrefslogtreecommitdiff
path: root/program
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2009-09-23 19:01:53 +0000
committeralecpl <alec@alec.pl>2009-09-23 19:01:53 +0000
commit93a88c95b7415206b0c8d742f8914c7ecc193e11 (patch)
treeb029aff510eb18a5555b89693408797782527e2d /program
parentcb9fc852cf39d91dfa1dc915073914fd153e774a (diff)
- Prevent from setting INBOX as any of special folders (#1486114)
Diffstat (limited to 'program')
-rw-r--r--program/include/main.inc5
-rw-r--r--program/steps/settings/edit_prefs.inc3
2 files changed, 5 insertions, 3 deletions
diff --git a/program/include/main.inc b/program/include/main.inc
index a99504cf5..97a3db16c 100644
--- a/program/include/main.inc
+++ b/program/include/main.inc
@@ -1152,11 +1152,12 @@ function rcmail_mailbox_select($p = array())
{
global $RCMAIL;
- $p += array('maxlength' => 100, 'relanames' => false);
+ $p += array('maxlength' => 100, 'realnames' => false);
$a_mailboxes = array();
foreach ($RCMAIL->imap->list_mailboxes() as $folder)
- rcmail_build_folder_tree($a_mailboxes, $folder, $RCMAIL->imap->get_hierarchy_delimiter());
+ if (empty($p['exceptions']) || !in_array($folder, $p['exceptions']))
+ rcmail_build_folder_tree($a_mailboxes, $folder, $RCMAIL->imap->get_hierarchy_delimiter());
$select = new html_select($p);
diff --git a/program/steps/settings/edit_prefs.inc b/program/steps/settings/edit_prefs.inc
index 38343b55f..6abfb00c2 100644
--- a/program/steps/settings/edit_prefs.inc
+++ b/program/steps/settings/edit_prefs.inc
@@ -375,7 +375,8 @@ function rcmail_user_prefs_block($part, $attrib)
// Configure special folders
if (!isset($no_override['default_imap_folders'])) {
$RCMAIL->imap_init(true);
- $select = rcmail_mailbox_select(array('noselection' => '---', 'realnames' => true, 'maxlength' => 30));
+ $select = rcmail_mailbox_select(array('noselection' => '---', 'realnames' => true,
+ 'maxlength' => 30, 'exceptions' => array('INBOX')));
if (!isset($no_override['drafts_mbox']))
$blocks['main']['options']['drafts_mbox'] = array(