X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fsearch.php;h=5c2a865ce21188f5f0ed3edc2a1c7c81a67088b1;hb=de0a20f25641785ba32d0af56f8169ba15e10951;hp=400ba81f9e6ead45a8efdb228203657c8c24f1db;hpb=59a623e69455d6dfd6715883ab2995fb977d14b1;p=squirrelmail.git diff --git a/src/search.php b/src/search.php index 400ba81f..5c2a865c 100644 --- a/src/search.php +++ b/src/search.php @@ -12,7 +12,7 @@ require_once('../src/validate.php'); require_once('../functions/imap.php'); require_once('../functions/imap_search.php'); -require_once('../functions/imap_utf7_decode_local.php'); +require_once('../functions/imap_mailbox.php'); require_once('../functions/array.php'); require_once('../functions/strings.php'); @@ -102,7 +102,7 @@ function forget_recent($forget_index, $username, $data_dir) { $attributes = get_recent( $username, $data_dir); reset($types); foreach ($types as $key) { - array_splice($attributes[$key], $forget_index, 1); + array_splice($attributes[$key], $forget_index - 1, 1); array_unshift($attributes[$key], ''); } reset($types); @@ -159,11 +159,10 @@ function save_recent($save_index, $username, $data_dir) { } } -function printSearchMessages($msgs,$mailbox, $cnt, $imapConnection, $usecache = false, $newsort = false) { +function printSearchMessages($msgs,$mailbox, $cnt, $imapConnection, $where, $what, $usecache = false, $newsort = false) { global $sort, $color; - $msort = calc_msort($msgs, $sort, $cnt, true); - + $msort = calc_msort($msgs, $sort); if ($cnt > 0) { if ( $mailbox == 'INBOX' ) { $showbox = _("INBOX"); @@ -172,9 +171,22 @@ function printSearchMessages($msgs,$mailbox, $cnt, $imapConnection, $usecache = } echo html_tag( 'div', '' . _("Folder:") . ' '. $showbox.'','center') . "\n"; + + $msg_cnt_str = get_msgcnt_str(1, $cnt, $cnt); + $toggle_all = get_selectall_link(1, $sort); + + echo '
'; + mail_message_listing_beginning($imapConnection, $mailbox, $sort, + $msg_cnt_str, $toggle_all, 1); + + + printHeader($mailbox, 6, $color, false); + displayMessageArray($imapConnection, $cnt, 1, - $msgs, $msort, $mailbox, $sort, $color, - $cnt, true); + $msort, $mailbox, $sort, $color, $cnt, $where, $what); + + mail_message_listing_end($cnt, '', $msg_cnt_str, $color); + echo '
'; } } @@ -232,8 +244,7 @@ elseif ($submit == 'delete') { do_hook('search_before_form'); -echo "
\n". - html_tag( 'table', +echo html_tag( 'table', html_tag( 'tr', "\n" . html_tag( 'td', '' . _("Search") . '', 'center', $color[0] ) ) , @@ -439,7 +450,8 @@ if ($search_all == 'all') { sqimap_mailbox_select($imapConnection, $mailbox); $msgs = sqimap_search($imapConnection, $where, $what, $mailbox, $color, 0, $search_all, $count_all); $count_all = count($msgs); - printSearchMessages($msgs, $mailbox, $count_all, $imapConnection); + printSearchMessages($msgs, $mailbox, $count_all, $imapConnection, + $where, $what, false, false); array_push($perbox_count, $count_all); } } @@ -462,7 +474,8 @@ else { sqimap_mailbox_select($imapConnection, $mailbox); $msgs = sqimap_search($imapConnection, $where, $what, $mailbox, $color, 0, $search_all, $count_all); if (count($msgs)) { - printSearchMessages($msgs, $mailbox, count($msgs), $imapConnection); + printSearchMessages($msgs, $mailbox, count($msgs), $imapConnection, + $where, $what, false, false); } else { echo '
' . _("No Messages Found") . '
'; }