From a5e8e5df88b8b8e0c7156d7e7ce9340ffa383644 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Tue, 02 Nov 2010 10:31:27 -0400
Subject: [PATCH] - Small code improvements

---
 program/include/rcube_imap_generic.php |   22 +++++++++++-----------
 1 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/program/include/rcube_imap_generic.php b/program/include/rcube_imap_generic.php
index 1f176b6..102bcb8 100644
--- a/program/include/rcube_imap_generic.php
+++ b/program/include/rcube_imap_generic.php
@@ -455,7 +455,7 @@
                 // send result
                 $this->putLine($reply);
                 $line = $this->readLine(1024);
-                
+
                 if ($line[0] == '+') {
 			        $challenge = substr($line, 2);
                 }
@@ -643,7 +643,7 @@
         if (array_key_exists('namespace', $this->prefs)) {
             return $this->prefs['namespace'];
         }
-    
+
         if (!$this->getCapability('NAMESPACE')) {
 	        return self::ERROR_BAD;
 	    }
@@ -1324,7 +1324,7 @@
 		    return false;
 	    }
 	    do {
-		    $line = $this->readLine(1024);
+		    $line = $this->readLine(4096);
 		    $line = $this->multLine($line);
 
             if (!$line)
@@ -1565,17 +1565,15 @@
 	    if ($field == 'date' || $field == 'internaldate') {
 	        $field = 'timestamp';
 	    }
+
     	if (empty($flag)) {
 	        $flag = 'ASC';
 	    } else {
         	$flag = strtoupper($flag);
         }
 
-	    $stripArr = ($field=='subject') ? array('Re: ','Fwd: ','Fw: ','"') : array('"');
-
 	    $c = count($a);
 	    if ($c > 0) {
-
 			// Strategy:
 			// First, we'll create an "index" array.
 			// Then, we'll use sort() on that array,
@@ -1593,14 +1591,17 @@
 			    } else {
 				    $data = $val->$field;
 				    if (is_string($data)) {
-					    $data = strtoupper(str_replace($stripArr, '', $data));
+				        $data = str_replace('"', '', $data);
+                	    if ($field == 'subject') {
+				            $data = preg_replace('/^(Re: \s*|Fwd:\s*|Fw:\s*)+/i', '', $data);
+                        }
+					    $data = strtoupper($data);
             		}
 			    }
-    			$index[$key]=$data;
+    			$index[$key] = $data;
 	    	}
 
 		    // sort index
-    		$i = 0;
 	    	if ($flag == 'ASC') {
 		    	asort($index);
     		} else {
@@ -1611,8 +1612,7 @@
 	    	$result = array();
 		    reset($index);
     		while (list($key, $val) = each($index)) {
-	    		$result[$key]=$a[$key];
-		    	$i++;
+	    		$result[$key] = $a[$key];
 		    }
 	    }
 

--
Gitblit v1.9.1