X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=functions%2Fimap_search.php;h=d765c65f31c627260a52e56d3d87ce3401988c94;hb=4dc802325c7420b8d257b32ea2ce597e82711a83;hp=b40cb4f7d3bc92e67ef73d6665a5d117c3ae8467;hpb=98fe1e9ffb8c254a739f853d3b83c667b9f9f65e;p=squirrelmail.git
diff --git a/functions/imap_search.php b/functions/imap_search.php
index b40cb4f7..d765c65f 100644
--- a/functions/imap_search.php
+++ b/functions/imap_search.php
@@ -13,13 +13,19 @@
if (!isset($mime_php))
include("../functions/mime.php");
+ $imap_search_php = true;
+
function sqimap_search($imapConnection,$search_where,$search_what,$mailbox,$color) {
- global $msgs;
+ global $msgs, $message_highlight_list, $squirrelmail_language, $languages, $index_order;
$urlMailbox = urlencode($mailbox);
# Construct the Search QuERY
- $ss = "a001 SEARCH ALL $search_where \"$search_what\"\r\n";
+ if ($languages[$squirrelmail_language]["CHARSET"]) {
+ $ss = "a001 SEARCH CHARSET ".$languages[$squirrelmail_language]["CHARSET"]." ALL $search_where \"$search_what\"\r\n";
+ } else {
+ $ss = "a001 SEARCH ALL $search_where \"$search_what\"\r\n";
+ }
fputs($imapConnection,$ss);
# Read Data Back From IMAP
@@ -48,6 +54,7 @@ function sqimap_search($imapConnection,$search_where,$search_what,$mailbox,$colo
# HACKED CODED FROM ANOTHER FUNCTION, Could Probably dump this and mondify
# exsitising code with a search true/false varible.
+
global $sent_folder;
for ($q = 0; $q < count($messagelist); $q++) {
$messagelist[$q] = trim($messagelist[$q]);
@@ -55,9 +62,13 @@ function sqimap_search($imapConnection,$search_where,$search_what,$mailbox,$colo
$hdr = sqimap_get_small_header ($imapConnection, $messagelist[$q], true);
else
$hdr = sqimap_get_small_header ($imapConnection, $messagelist[$q], false);
- $from[$q] = $hdr->from;
- $date[$q] = $hdr->date;
- $subject[$q] = $hdr->subject;
+
+ $from[$q] = $hdr->from;
+ $date[$q] = $hdr->date;
+ $subject[$q] = $hdr->subject;
+ $to[$q] = $hdr->to;
+ $priority[$q] = $hdr->priority;
+ $cc[$q] = $hdr->cc;
$id[$q] = $messagelist[$q];
$flags[$q] = sqimap_get_flags ($imapConnection, $messagelist[$q]);
@@ -70,9 +81,14 @@ function sqimap_search($imapConnection,$search_where,$search_what,$mailbox,$colo
$messages[$j]["TIME_STAMP"] = getTimeStamp($tmpdate);
$messages[$j]["DATE_STRING"] = getDateString($messages[$j]["TIME_STAMP"]);
- $messages[$j]["ID"] = $id[$j];
+ $messages[$j]["ID"] = $id[$j];
$messages[$j]["FROM"] = decodeHeader($from[$j]);
+ $messages[$j]["FROM-SORT"] = strtolower(sqimap_find_displayable_name(decodeHeader($from[$j])));
$messages[$j]["SUBJECT"] = decodeHeader($subject[$j]);
+ $messages[$j]["SUBJECT-SORT"] = strtolower(decodeHeader($subject[$j]));
+ $messages[$j]["TO"] = decodeHeader($to[$j]);
+ $messages[$j]["PRIORITY"] = $priority[$j];
+ $messages[$j]["CC"] = $cc[$j];
$num = 0;
while ($num < count($flags[$j])) {
@@ -110,63 +126,16 @@ function sqimap_search($imapConnection,$search_where,$search_what,$mailbox,$colo
// There's gotta be messages in the array for it to sort them.
- # Carn't Use the Display messages function it assumes messages are in order.
- # Again More code Hacked from else where
- # AT THE MOMENT YOU CARN'T SORT SEARCH RESULTS
- # ACTULLY THE CODE IS PROLLY BROKEN ANY HOW!
-
if (count($messagelist) > 0) {
$j=0;
- echo "
" . _("Found") . " " . count($messagelist) . " " . _("messages") . "\n";
- echo "
\n";
- echo "";
- echo "";
-
- echo "\n\n\n |
";
- echo "";
- echo "";
- echo "";
- echo " | ";
- /** FROM HEADER **/
- if ($mailbox == $sent_folder)
- echo " ". _("To") ." | ";
- else
- echo " ". _("From") ." | ";
- /** DATE HEADER **/
- echo " ". _("Date") ." | ";
- echo " | \n";
- /** SUBJECT HEADER **/
- echo " ". _("Subject") ." | \n";
- echo " ";
+ mail_message_listing_beginning($imapConnection,
+ "move_messages.php?msg=$msg&mailbox=$urlMailbox&where=".urlencode($search_where)."&what=".urlencode($search_what),
+ '', -1, '' . _("Found") . ' ' . count($messagelist) . ' ' . _("messages") . '',
+ ' ');
+
while ($j < count($msgs)) {
printMessageInfo($imapConnection, $msgs[$j]["ID"], 0, $j, $mailbox, "", 0, $search_where, $search_what);
- //echo $msgs[$j]["SUBJECT"]." ";
$j++;
}
echo " ";
|