diff options
| author | roundcube <roundcube@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2006-03-23 22:32:47 +0000 |
|---|---|---|
| committer | roundcube <roundcube@208e9e7b-5314-0410-a742-e7e81cd9613c> | 2006-03-23 22:32:47 +0000 |
| commit | 3e94d97cdbfd9926ca1182654c60b88d77871124 (patch) | |
| tree | 3b7bf1caed4bc0755ec3e76c520cb6fb7ba565c3 /roundcubemail/program/steps/mail/list.inc | |
| parent | 21f5cae2c2ac9a4e6db08ca05f532be40eabd913 (diff) | |
Started implementing search function
git-svn-id: https://svn.roundcube.net/trunk@171 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program/steps/mail/list.inc')
| -rw-r--r-- | roundcubemail/program/steps/mail/list.inc | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/roundcubemail/program/steps/mail/list.inc b/roundcubemail/program/steps/mail/list.inc index 391c05b73..40cd652df 100644 --- a/roundcubemail/program/steps/mail/list.inc +++ b/roundcubemail/program/steps/mail/list.inc @@ -22,8 +22,6 @@ $REMOTE_REQUEST = TRUE; $OUTPUT_TYPE = 'js'; -$unseen = $IMAP->messagecount($mbox, 'UNSEEN', !empty($_GET['_refresh']) ? TRUE : FALSE); -$count = $IMAP->messagecount(); $sort = isset($_GET['_sort']) ? $_GET['_sort'] : false; // is there a sort type for this request? @@ -37,13 +35,28 @@ if ($sort) $_SESSION['sort_order'] = $sort_order; } else - { + { // use session settings if set, defaults if not $sort_col = isset($_SESSION['sort_col']) ? $_SESSION['sort_col'] : $CONFIG['message_sort_col']; $sort_order = isset($_SESSION['sort_order']) ? $_SESSION['sort_order'] : $CONFIG['message_sort_order']; } +// we have a saved search request +if (!empty($_GET['_search']) && isset($_SESSION['search'][$_GET['_search']])) + { + $a_msgs = split(',', $_SESSION['search'][$_GET['_search']]); + $a_headers = $IMAP->list_header_set($mbox, $a_msgs, NULL, $sort_col, $sort_order); + $count = count($a_msgs); + } +else + { + if ($count = $IMAP->messagecount()) + $a_headers = $IMAP->list_headers($mbox, NULL, $sort_col, $sort_order); + } + +$unseen = $IMAP->messagecount($mbox, 'UNSEEN', !empty($_GET['_refresh']) ? TRUE : FALSE); + // update message count display $pages = ceil($count/$IMAP->page_size); $commands = sprintf("this.set_env('messagecount', %d);\n", $count); @@ -56,11 +69,8 @@ $commands .= sprintf("this.set_unread_count('%s', %d);\n", addslashes($mbox), $u // add message rows -if ($count) - { - $a_headers = $IMAP->list_headers($mbox, null, $sort_col, $sort_order); +if (isset($a_headers) && count($a_headers)) $commands .= rcmail_js_message_list($a_headers); - } // send response |
