| | |
| | | // not very performant but more precise (using UNDELETED) |
| | | $index = $this->_search_index($mailbox, $search_str); |
| | | $count = is_array($index) ? count($index) : 0; |
| | | |
| | | if ($mode == 'ALL') |
| | | $_SESSION['maxuid'][$mailbox] = $index ? $this->_id2uid(max($index)) : 0; |
| | | } |
| | | else { |
| | | if ($mode == 'UNSEEN') |
| | |
| | | // move messages |
| | | $iil_move = iil_C_Move($this->conn, join(',', $a_uids), $from_mbox, $to_mbox); |
| | | $moved = !($iil_move === false || $iil_move < 0); |
| | | |
| | | |
| | | // send expunge command in order to have the moved message |
| | | // really deleted from the source mailbox |
| | | if ($moved) { |
| | |
| | | $this->_clear_messagecount($to_mbox); |
| | | } |
| | | // moving failed |
| | | else if (rcmail::get_instance()->config->get('delete_always', false)) { |
| | | return iil_C_Delete($this->conn, $from_mbox, join(',', $a_uids)); |
| | | else if ($config->get('delete_always', false) && $tbox == $config->get('trash_mbox')) { |
| | | return $this->delete_message($a_uids, $fbox); |
| | | } |
| | | |
| | | // remove message ids from search set |