alecpl
2011-06-17 67975b99efc14e98181f659568ce9306d0a91cd1
program/steps/settings/folders.inc
@@ -179,7 +179,7 @@
    list($form_start, $form_end) = get_form_tags($attrib, 'folders');
    unset($attrib['form']);
    if (!$attrib['id'])
        $attrib['id'] = 'rcmSubscriptionlist';
@@ -197,6 +197,7 @@
    $a_unsubscribed = $IMAP->list_unsubscribed();
    $a_subscribed   = $IMAP->list_mailboxes();
    $delimiter      = $IMAP->get_hierarchy_delimiter();
    $namespace      = $IMAP->get_namespace();
    $a_js_folders   = array();
    $seen           = array();
    $list_folders   = array();
@@ -253,6 +254,7 @@
        $idx        = $i + 1;
        $subscribed = in_array($folder['id'], $a_subscribed);
        $protected  = ($CONFIG['protect_default_folders'] == true && in_array($folder['id'], $CONFIG['default_imap_folders']));
        $noselect   = false;
        $classes    = array($i%2 ? 'even' : 'odd');
        $folder_js      = Q($folder['id']);
@@ -271,6 +273,19 @@
        $disabled = (($protected && $subscribed) || $noselect);
        // check if the folder is a namespace prefix, then disable subscription option on it
        if (!$disabled && $folder['virtual'] && $folder['level'] == 0 && !empty($namespace)) {
            $fname = $folder['id'] . $delimiter;
            foreach ($namespace as $ns) {
                foreach ($ns as $item) {
                    if ($item[0] === $fname) {
                        $disabled = true;
                        break;
                    }
                }
            }
        }
        $table->add_row(array('id' => 'rcmrow'.$idx, 'class' => join(' ', $classes),
            'foldername' => $folder['id']));