Fixed imap search bug.
Updated Spanish strings.
This commit is contained in:
parent
c20546364b
commit
09481c9b5a
2 changed files with 20 additions and 15 deletions
|
@ -67,6 +67,7 @@
|
|||
// Sort the message list and crunch to be as small as possible
|
||||
// (overflow could happen, so make it small if possible)
|
||||
function sqimap_message_list_squisher($messages_array) {
|
||||
if( !is_array( $messages_array ) ) return;
|
||||
sort($messages_array, SORT_NUMERIC);
|
||||
$msgs_str = '';
|
||||
while ($messages_array) {
|
||||
|
|
|
@ -17,30 +17,34 @@
|
|||
|
||||
function sqimap_search($imapConnection,$search_where,$search_what,$mailbox,$color) {
|
||||
global $msgs, $message_highlight_list, $squirrelmail_language, $languages, $index_order;
|
||||
$urlMailbox = urlencode($mailbox);
|
||||
|
||||
# Construct the Search QuERY
|
||||
$ss = sqimap_session_id();
|
||||
if (isset($languages[$squirrelmail_language]["CHARSET"]) && $languages[$squirrelmail_language]["CHARSET"]) {
|
||||
$ss = " SEARCH CHARSET ".$languages[$squirrelmail_language]["CHARSET"]." ALL $search_where \"$search_what\"\r\n";
|
||||
$urlMailbox = urlencode($mailbox);
|
||||
$isid = sqimap_session_id();
|
||||
|
||||
/* Construct the Search QuERY */
|
||||
$ss = $isid;
|
||||
if (isset($languages[$squirrelmail_language]['CHARSET']) &&
|
||||
$languages[$squirrelmail_language]['CHARSET']) {
|
||||
$ss .= " SEARCH CHARSET ".$languages[$squirrelmail_language]['CHARSET']." ALL $search_where \"$search_what\"\r\n";
|
||||
} else {
|
||||
$ss = " SEARCH ALL $search_where \"$search_what\"\r\n";
|
||||
$ss .= " SEARCH ALL $search_where \"$search_what\"\r\n";
|
||||
}
|
||||
fputs($imapConnection,$ss);
|
||||
|
||||
# Read Data Back From IMAP
|
||||
$readin = sqimap_read_data ($imapConnection, sqimap_session_id(), false, $result, $message);
|
||||
if (isset($languages[$squirrelmail_language]["CHARSET"]) && strtolower($result) == "no") {
|
||||
$ss = sqimap_session_id() . " SEARCH CHARSET \"US-ASCII\" ALL $search_where \"$search_what\"\r\n";
|
||||
$readin = sqimap_read_data ($imapConnection, $isid, false, $result, $message);
|
||||
if (isset($languages[$squirrelmail_language]['CHARSET']) && strtolower($result) == 'no') {
|
||||
$ss = $isid . " SEARCH CHARSET \"US-ASCII\" ALL $search_where \"$search_what\"\r\n";
|
||||
fputs ($imapConnection, $ss);
|
||||
$readin = sqimap_read_data ($imapConnection, sqimap_session_id(), true, $result, $message);
|
||||
$readin = sqimap_read_data ($imapConnection, $isid, true, $result, $message);
|
||||
}
|
||||
|
||||
unset($messagelist); $msgs=""; $c = 0;
|
||||
|
||||
#Keep going till we find the SEARCH responce
|
||||
while ($c < count($readin)) {
|
||||
/* Keep going till we find the SEARCH responce */
|
||||
while ($c < count( $readin )) {
|
||||
|
||||
#Check to see if a SEARCH Responce was recived
|
||||
/* Check to see if a SEARCH Responce was recived */
|
||||
if (substr($readin[$c],0,9) == "* SEARCH ")
|
||||
$messagelist = explode(" ",substr($readin[$c],9));
|
||||
else if (isset($errors))
|
||||
|
|
Loading…
Add table
Reference in a new issue