alecpl
2010-09-08 2aa2b332f6e216ceeabc36ef6b942c40d91bda5a
program/include/rcube_imap_generic.php
@@ -749,31 +749,24 @@
       if ($this->putLine("sel1 SELECT \"".$this->escape($mailbox).'"')) {
          do {
             $line = rtrim($this->readLine(300));
             $a = explode(' ', $line);
             if (count($a) == 3) {
                $token = strtoupper($a[2]);
                if ($token == 'EXISTS') {
                   $this->exists = (int) $a[1];
                }
                else if ($token == 'RECENT') {
                   $this->recent = (int) $a[1];
                }
             $line = rtrim($this->readLine(512));
             if (preg_match('/^\* ([0-9]+) (EXISTS|RECENT)$/', $line, $m)) {
                 $token = strtolower($m[2]);
                 $this->$token = (int) $m[1];
             }
             else if (preg_match('/\[?PERMANENTFLAGS\s+\(([^\)]+)\)\]/U', $line, $match)) {
                $this->permanentflags = explode(' ', $match[1]);
             }
          } while (!$this->startsWith($line, 'sel1', true, true));
          if (strcasecmp($a[1], 'OK') == 0) {
            if ($this->parseResult($line) == 0) {
             $this->selected = $mailbox;
             return true;
          }
            else {
                $this->error = "Couldn't select $mailbox";
            }
       }
        $this->error = "Couldn't select $mailbox";
        return false;
    }
@@ -1265,7 +1258,7 @@
                      }
                       break;
                   case 'in-reply-to':
                      $result[$id]->in_reply_to = preg_replace('/[\n<>]/', '', $string);
                      $result[$id]->in_reply_to = str_replace(array("\n", '<', '>'), '', $string);
                      break;
                   case 'references':
                      $result[$id]->references = $string;
@@ -2003,7 +1996,7 @@
       return false;
    }
    function appendFromFile($folder, $path, $headers=null, $separator="\n\n")
    function appendFromFile($folder, $path, $headers=null)
    {
       if (!$folder) {
           return false;
@@ -2019,14 +2012,16 @@
          return false;
       }
        $body_separator = "\r\n\r\n";
       $len = filesize($path);
       if (!$len) {
          return false;
       }
        if ($headers) {
            $headers = preg_replace('/[\r\n]+$/', '', $headers);
            $len += strlen($headers) + strlen($separator);
            $len += strlen($headers) + strlen($body_separator);
        }
       // send APPEND command
@@ -2042,7 +2037,7 @@
            // send headers with body separator
            if ($headers) {
             $this->putLine($headers . $separator, false);
             $this->putLine($headers . $body_separator, false);
            }
          // send file
@@ -2120,7 +2115,7 @@
       // return false if not found, parse if found
       $min_free = PHP_INT_MAX;
       foreach ($quota_lines as $key => $quota_line) {
          $quota_line   = preg_replace('/[()]/', '', $quota_line);
          $quota_line   = str_replace(array('(', ')'), '', $quota_line);
          $parts        = explode(' ', $quota_line);
          $storage_part = array_search('STORAGE', $parts);