X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;ds=sidebyside;f=functions%2Fimap_search.php;h=300beaad57617bd3fa4601b5b971ade955e11fd3;hb=a615e36190f51e5c4705e80b77fe29404ea37478;hp=7d497ab49360bd033f9f61a4c94e73242cf6dfe9;hpb=245a6892bf5c780904ef9677f24d624ea17e0749;p=squirrelmail.git diff --git a/functions/imap_search.php b/functions/imap_search.php index 7d497ab4..300beaad 100644 --- a/functions/imap_search.php +++ b/functions/imap_search.php @@ -1,150 +1,175 @@ -
No Messages Found
"; - return; - } else { - echo ""; - } - - # 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]); - if ($mailbox == $sent_folder) - $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; - $to[$q] = $hdr->to; - $priority[$q] = $hdr->priority; - $cc[$q] = $hdr->cc; - $size[$q] = $hdr->size; - $type[$q] = $hdr->type0; - $id[$q] = $messagelist[$q]; - $flags[$q] = sqimap_get_flags ($imapConnection, $messagelist[$q]); - } - - $j = 0; - while ($j < count($messagelist)) { - $date[$j] = ereg_replace(" ", " ", $date[$j]); - $tmpdate = explode(" ", trim($date[$j])); - - $messages[$j]["TIME_STAMP"] = getTimeStamp($tmpdate); - $messages[$j]["DATE_STRING"] = getDateString($messages[$j]["TIME_STAMP"]); - $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]; - $messages[$j]["SIZE"] = $size[$j]; - $messages[$j]["TYPE0"] = $type[$j]; - - $num = 0; - while ($num < count($flags[$j])) { - if ($flags[$j][$num] == "Deleted") { - $messages[$j]["FLAG_DELETED"] = true; +
' . _("No Messages Found") . '
'; + return; + } else if (isset($errors)) { + echo ""; + } + + # 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++) { + $id[$q] = trim($messagelist[$q]); + } + $issent = ($mailbox == $sent_folder); + $hdr_list = sqimap_get_small_header_list($imapConnection, $id, $issent); + $flags = sqimap_get_flags_list($imapConnection, $id, $issent); + foreach ($hdr_list as $hdr) { + $from[] = $hdr->from; + $date[] = $hdr->date; + $subject[] = $hdr->subject; + $to[] = $hdr->to; + $priority[] = $hdr->priority; + $cc[] = $hdr->cc; + $size[] = $hdr->size; + $type[] = $hdr->type0; + } + + $j = 0; + while ($j < count($messagelist)) { + $date[$j] = ereg_replace(' ', ' ', $date[$j]); + $tmpdate = explode(" ", trim($date[$j])); + + $messages[$j]["TIME_STAMP"] = getTimeStamp($tmpdate); + $messages[$j]["DATE_STRING"] = getDateString($messages[$j]["TIME_STAMP"]); + $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]; + $messages[$j]["SIZE"] = $size[$j]; + $messages[$j]["TYPE0"] = $type[$j]; + + $num = 0; + while ($num < count($flags[$j])) { + if ($flags[$j][$num] == 'Deleted') { + $messages[$j]['FLAG_DELETED'] = true; + } else if ($flags[$j][$num] == 'Answered') { + $messages[$j]['FLAG_ANSWERED'] = true; + } else if ($flags[$j][$num] == 'Seen') { + $messages[$j]['FLAG_SEEN'] = true; + } else if ($flags[$j][$num] == 'Flagged') { + $messages[$j]['FLAG_FLAGGED'] = true; + } + $num++; + } + $j++; + } + + /** Find and remove the ones that are deleted */ + $i = 0; + $j = 0; + while ($j < count($messagelist)) { + if (isset($messages[$j]["FLAG_DELETED"]) && $messages[$j]["FLAG_DELETED"] == true) { + $j++; + continue; } - else if ($flags[$j][$num] == "Answered") { - $messages[$j]["FLAG_ANSWERED"] = true; - } - else if ($flags[$j][$num] == "Seen") { - $messages[$j]["FLAG_SEEN"] = true; - } - else if ($flags[$j][$num] == "Flagged") { - $messages[$j]["FLAG_FLAGGED"] = true; - } - $num++; - } - $j++; - } - - /** Find and remove the ones that are deleted */ - $i = 0; - $j = 0; - while ($j < count($messagelist)) { - if ($messages[$j]["FLAG_DELETED"] == true) { - $j++; - continue; - } - $msgs[$i] = $messages[$j]; - - $i++; - $j++; - } - $numMessages = $i; - - // There's gotta be messages in the array for it to sort them. - - if (count($messagelist) > 0) { - $j=0; - 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); + $msgs[$i] = $messages[$j]; + + $i++; $j++; - } - echo ""; - echo ""; - } - } + } + $numMessages = $i; + + // There's gotta be messages in the array for it to sort them. + + if (count($messagelist) > 0) { + $j=0; + if (!isset ($msg)) { $msg = ""; } + mail_message_listing_beginning($imapConnection, + "move_messages.php?msg=$msg&mailbox=$urlMailbox&where=".urlencode($search_where)."&what=".urlencode($search_what), + $mailbox, -1, '' . _("Found") . ' ' . count($messagelist) . ' ' . _("messages") . '', + ' '); + + + while ($j < count($msgs)) { + printMessageInfo($imapConnection, $msgs[$j]["ID"], 0, $j, $mailbox, "", 0, $search_where, $search_what); + $j++; + } + echo ''; + } + } ?>