| | |
| | | return $this->handlePartBody($mailbox, $id, $is_uid, $part); |
| | | } |
| | | |
| | | function handlePartBody($mailbox, $id, $is_uid=false, $part='', $encoding=NULL, $print=NULL, $file=NULL) |
| | | function handlePartBody($mailbox, $id, $is_uid=false, $part='', $encoding=NULL, $print=NULL, $file=NULL, $formatted=true) |
| | | { |
| | | if (!$this->select($mailbox)) { |
| | | return false; |
| | |
| | | continue; |
| | | $line = convert_uudecode($line); |
| | | // default |
| | | } else { |
| | | } else if ($formatted) { |
| | | $line = rtrim($line, "\t\r\n\0\x0B") . "\n"; |
| | | } |
| | | |
| | |
| | | { |
| | | unset($this->data['APPENDUID']); |
| | | |
| | | if (!$mailbox) { |
| | | if ($mailbox === null || $mailbox === '') { |
| | | return false; |
| | | } |
| | | |
| | |
| | | { |
| | | unset($this->data['APPENDUID']); |
| | | |
| | | if (!$mailbox) { |
| | | if ($mailbox === null || $mailbox === '') { |
| | | return false; |
| | | } |
| | | |
| | |
| | | if (file_exists(realpath($path))) { |
| | | $in_fp = fopen($path, 'r'); |
| | | } |
| | | |
| | | if (!$in_fp) { |
| | | $this->setError(self::ERROR_UNKNOWN, "Couldn't open $path for reading"); |
| | | return false; |
| | |
| | | */ |
| | | static function getStructurePartData($structure, $part) |
| | | { |
| | | $part_a = self::getStructurePartArray($structure, $part); |
| | | $data = array(); |
| | | $part_a = self::getStructurePartArray($structure, $part); |
| | | $data = array(); |
| | | |
| | | if (empty($part_a)) { |
| | | if (empty($part_a)) { |
| | | return $data; |
| | | } |
| | | |
| | |
| | | |
| | | static function getStructurePartArray($a, $part) |
| | | { |
| | | if (!is_array($a)) { |
| | | if (!is_array($a)) { |
| | | return false; |
| | | } |
| | | |
| | | if (empty($part)) { |
| | | return $a; |
| | | } |
| | | return $a; |
| | | } |
| | | |
| | | $ctype = is_string($a[0]) && is_string($a[1]) ? $a[0] . '/' . $a[1] : ''; |
| | | |
| | |
| | | $a = $a[8]; |
| | | } |
| | | |
| | | if (strpos($part, '.') > 0) { |
| | | $orig_part = $part; |
| | | $pos = strpos($part, '.'); |
| | | $rest = substr($orig_part, $pos+1); |
| | | $part = substr($orig_part, 0, $pos); |
| | | if (strpos($part, '.') > 0) { |
| | | $orig_part = $part; |
| | | $pos = strpos($part, '.'); |
| | | $rest = substr($orig_part, $pos+1); |
| | | $part = substr($orig_part, 0, $pos); |
| | | |
| | | return self::getStructurePartArray($a[$part-1], $rest); |
| | | } |
| | | return self::getStructurePartArray($a[$part-1], $rest); |
| | | } |
| | | else if ($part > 0) { |
| | | if (is_array($a[$part-1])) |
| | | return $a[$part-1]; |
| | | else |
| | | return $a; |
| | | } |
| | | return (is_array($a[$part-1])) ? $a[$part-1] : $a; |
| | | } |
| | | } |
| | | |
| | | /** |