/** * Fetches thread data from IMAP server */ private function get_thread_data($mailbox, $mbox_data = array()) { if (empty($mbox_data)) { $mbox_data = $this->imap->folder_data($mailbox); } if ($mbox_data['EXISTS']) { // get all threads (default sort order) return $this->imap->threads_direct($mailbox); } return new rcube_result_thread($mailbox, '* THREAD'); }
/** * Fetches index data from IMAP server */ private function get_index_data($mailbox, $sort_field, $sort_order, $mbox_data = array()) { if (empty($mbox_data)) { $mbox_data = $this->imap->folder_data($mailbox); } if ($mbox_data['EXISTS']) { // fetch sorted sequence numbers $index = $this->imap->index_direct($mailbox, $sort_field, $sort_order); } else { $index = new rcube_result_index($mailbox, '* SORT'); } return $index; }