/**
* Processes delete message requests.
* See the list of variables needed for viewPortData().
*
* @param IMP_Indices $indices An indices object.
* @param boolean $changed If true, add full ViewPort information.
* @param boolean $force If true, forces addition of disappear
* information.
*/
public function deleteMsgs(IMP_Indices $indices, $changed, $force = false)
{
/* Check if we need to update thread information. */
if (!$changed) {
$changed = $this->indices->mailbox->getSort()->sortby == Horde_Imap_Client::SORT_THREAD;
}
if ($changed) {
$this->addTask('viewport', $this->viewPortData(true));
} elseif ($indices instanceof IMP_Indices_Mailbox && ($force || $this->indices->mailbox->hideDeletedMsgs(true))) {
$vp = new IMP_Ajax_Application_Viewport($this->indices->mailbox);
$vp->disappear = $indices->buids[strval($this->indices->mailbox)];
$this->addTask('viewport', $vp);
}
$this->queue->poll(array_keys($indices->indices()));
}