Suppress trash preferences if use trash is off
authorMichael M Slusarz <slusarz@curecanti.org>
Tue, 13 Apr 2010 06:10:47 +0000 (00:10 -0600)
committerMichael M Slusarz <slusarz@curecanti.org>
Tue, 13 Apr 2010 06:10:47 +0000 (00:10 -0600)
imp/config/prefs.php.dist
imp/lib/Prefs/Ui.php

index f3d5c8c..ef3c830 100644 (file)
@@ -872,8 +872,7 @@ $prefGroups['delmove'] = array(
     'desc' => _("Set preferences for what happens when you move and delete messages."),
     'members' => array(
         'mailbox_return', 'delete_spam_after_report', 'move_ham_after_report',
-        'empty_spam_menu', 'use_trash', 'trashselect', 'use_vtrash',
-        'empty_trash_menu'
+        'empty_spam_menu', 'use_trash', 'trashselect', 'empty_trash_menu'
     )
 );
 
index 06d6caf..f3926fe 100644 (file)
@@ -66,14 +66,18 @@ class IMP_Prefs_Ui
         case 'delmove':
             if ($pop3) {
                 $ui->suppress[] = 'move_ham_after_report';
+                $ui->suppress[] = 'empty_spam_menu';
                 $ui->suppress[] = 'use_trash';
                 $ui->suppress[] = 'trashselect';
-                $ui->suppress[] = 'use_vtrash';
                 $ui->suppress[] = 'empty_trash_menu';
 
                 $tmp = $ui->prefs['delete_spam_after_report']['enum'];
                 unset($tmp[2]);
                 $ui->override['delete_spam_after_report'] = $tmp;
+            } elseif ($prefs->isLocked('use_trash') ||
+                      !$prefs->getValue('use_trash')) {
+                $ui->suppress[] = 'trashselect';
+                $ui->suppress[] = 'empty_trash_menu';
             }
             break;
 
@@ -454,6 +458,9 @@ class IMP_Prefs_Ui
             break;
 
         case 'delmove':
+            if ($prefs->isDirty('use_trash')) {
+                $ui->suppress = array_diff($ui->suppress, array('trashselect', 'empty_trash_menu'));
+            }
             if ($prefs->isDirty('use_vtrash')) {
                 $GLOBALS['imp_search']->initialize(true);
             }