Convert delete() to use options parameter
authorMichael M Slusarz <slusarz@curecanti.org>
Fri, 15 May 2009 19:42:52 +0000 (13:42 -0600)
committerMichael M Slusarz <slusarz@curecanti.org>
Fri, 15 May 2009 20:08:27 +0000 (14:08 -0600)
imp/ajax.php
imp/compose-dimp.php
imp/compose-mimp.php
imp/lib/Maintenance/Task/purge_sentmail.php
imp/lib/Maintenance/Task/purge_spam.php
imp/lib/Maintenance/Task/purge_trash.php
imp/lib/Message.php
imp/message.php

index 8a1a12d..e9c5cd3 100644 (file)
@@ -537,7 +537,7 @@ case 'DeleteDraft':
     }
     $imp_message = IMP_Message::singleton();
     $idx_array = array($index . IMP::IDX_SEP . IMP::folderPref($prefs->getValue('drafts_folder'), true));
-    $imp_message->delete($idx_array, true);
+    $imp_message->delete($idx_array, array('nuke' => true));
     break;
 
 case 'DeleteAttach':
index 41f3530..8639763 100644 (file)
@@ -21,7 +21,7 @@ function _removeAutoSaveDraft($index)
 {
     if (!empty($index)) {
         $imp_message = &IMP_Message::singleton();
-        $imp_message->delete(array($index . IMP::IDX_SEP . IMP::folderPref($GLOBALS['prefs']->getValue('drafts_folder'), true)), true);
+        $imp_message->delete(array($index . IMP::IDX_SEP . IMP::folderPref($GLOBALS['prefs']->getValue('drafts_folder'), true)), array('nuke' => true));
     }
 }
 
index c7c9435..0791f47 100644 (file)
@@ -219,7 +219,7 @@ case _("Send"):
                 $prefs->getValue('auto_delete_drafts')) {
                 $imp_message = &IMP_Message::singleton();
                 $idx_array = array($index . IMP::IDX_SEP . $thismailbox);
-                $delete_draft = $imp_message->delete($idx_array, true);
+                $delete_draft = $imp_message->delete($idx_array, array('nuke' => true));
             }
 
             $notification->push(_("Message sent successfully."), 'horde.success');
index cf79d04..e4c3ad6 100644 (file)
@@ -49,7 +49,7 @@ class Maintenance_Task_purge_sentmail extends Maintenance_Task
             }
 
             /* Go through the message list and delete the messages. */
-            if ($imp_message->delete(array($mbox => $msg_ids), true)) {
+            if ($imp_message->delete(array($mbox => $msg_ids), array('nuke' => true))) {
                 $msgcount = count($msg_ids);
                 if ($msgcount == 1) {
                     $notification->push(sprintf(_("Purging 1 message from sent-mail folder %s."), IMP::displayFolder($mbox)), 'horde.message');
index 5fe6978..cced3fd 100644 (file)
@@ -49,7 +49,7 @@ class Maintenance_Task_purge_spam extends Maintenance_Task
 
         /* Go through the message list and delete the messages. */
         $imp_message = IMP_Message::singleton();
-        if ($imp_message->delete(array($spam_folder => $msg_ids), true)) {
+        if ($imp_message->delete(array($spam_folder => $msg_ids), array('nuke' => true))) {
             $msgcount = count($msg_ids);
             if ($msgcount == 1) {
                 $notification->push(_("Purging 1 message from Spam folder."), 'horde.message');
index 9e0da8f..205c6f1 100644 (file)
@@ -49,7 +49,7 @@ class Maintenance_Task_purge_trash extends Maintenance_Task
 
         /* Go through the message list and delete the messages. */
         $imp_message = IMP_Message::singleton();
-        if ($imp_message->delete(array($trash_folder => $msg_ids), true)) {
+        if ($imp_message->delete(array($trash_folder => $msg_ids), array('nuke' => true))) {
             $msgcount = count($msg_ids);
             if ($msgcount == 1) {
                 $notification->push(_("Purging 1 message from Trash folder."), 'horde.message');
index 6115509..b6b9280 100644 (file)
@@ -163,16 +163,19 @@ class IMP_Message
      * Trash folder is being used.
      * Handles use of the IMP::SEARCH_MBOX mailbox and the Trash folder.
      *
-     * @param mixed $indices    See IMP::parseIndicesList().
-     * @param boolean $nuke     Override user preferences and nuke (i.e.
-     *                          permanently delete) the messages instead?
-     * @param boolean $keeplog  Should any history information of the
-     *                          message be kept?
+     * @param mixed $indices  See IMP::parseIndicesList().
+     * @param array $options  Additional options:
+     * <pre>
+     * 'keeplog' - (boolean) Should any history information of the message be
+     *             kept?
+     * 'nuke' - (boolean) Override user preferences and nuke (i.e. permanently
+     *          delete) the messages instead?
+     * </pre>
      *
      * @return integer|boolean  The number of messages deleted if successful,
      *                          false if not.
      */
-    public function delete($indices, $nuke = false, $keeplog = false)
+    public function delete($indices, $options = array())
     {
         global $conf, $notification, $prefs;
 
@@ -189,10 +192,10 @@ class IMP_Message
         }
 
         $return_value = 0;
-        $maillog_update = (!$keeplog && !empty($conf['maillog']['use_maillog']));
+        $maillog_update = (empty($options['keeplog']) && !empty($conf['maillog']['use_maillog']));
 
         /* Check for Trash folder. */
-        $use_trash_folder = !$this->_usepop && !$nuke && !$use_vtrash && $use_trash;
+        $use_trash_folder = !$this->_usepop && empty($options['nuke']) && !$use_vtrash && $use_trash;
         if ($use_trash_folder) {
             include_once IMP_BASE . '/lib/Folder.php';
             $imp_folder = IMP_Folder::singleton();
@@ -255,7 +258,7 @@ class IMP_Message
                 $del_flags = array('\\deleted');
 
                 if ($this->_usepop ||
-                    $nuke ||
+                    !empty($options['nuke']) ||
                     ($use_trash && ($mbox == $trash)) ||
                     ($use_vtrash && ($GLOBALS['imp_search']->isVTrashFolder()))) {
                     /* Purge messages immediately. */
@@ -539,7 +542,7 @@ class IMP_Message
             throw new Horde_Exception(_("An error occured while attempting to strip the attachment."));
         }
 
-        $this->delete($indices, true, true);
+        $this->delete($indices, array('nuke' => true, 'keeplog' => true));
 
         $imp_mailbox = IMP_Mailbox::singleton($mbox);
         $imp_mailbox->setIndex(reset($uid));
index 66193e0..1979967 100644 (file)
@@ -410,7 +410,7 @@ if (!IMP::$printMode) {
      * message in the header. */
     $h_page_label = htmlspecialchars($page_label);
     $header_label = $h_page_label;
-    if ($imp_search->isSearchMbox()) {
+    if ($imp_search->isSearchMbox($imp_mbox['mailbox'])) {
         $header_label .= ' [' . Horde::link(Util::addParameter(Horde::applicationUrl('mailbox.php'), 'mailbox', $mailbox_name)) . IMP::displayFolder($mailbox_name) . '</a>]';
     }