summaryrefslogtreecommitdiff
path: root/program/lib/Mail/mime.php
diff options
context:
space:
mode:
authorAndy Wermke <andy@dev.next-step-software.com>2013-04-04 16:10:23 +0200
committerAndy Wermke <andy@dev.next-step-software.com>2013-04-04 16:10:23 +0200
commit92cd7f34b07e86062f2c024039e3309768b48ce6 (patch)
tree63b9f39280ebcab80742d9f2b4db6a139c1791e1 /program/lib/Mail/mime.php
parent029d18f13bcf01aa2f1f08dbdfc6400c081bf7cb (diff)
parent443b92a7ee19e321b350750240e0fc54ec5be357 (diff)
Merge branch 'master' of https://github.com/roundcube/roundcubemail
Diffstat (limited to 'program/lib/Mail/mime.php')
-rw-r--r--program/lib/Mail/mime.php57
1 files changed, 37 insertions, 20 deletions
diff --git a/program/lib/Mail/mime.php b/program/lib/Mail/mime.php
index c459b9123..69a032cb8 100644
--- a/program/lib/Mail/mime.php
+++ b/program/lib/Mail/mime.php
@@ -48,7 +48,7 @@
* @author Aleksander Machniak <alec@php.net>
* @copyright 2003-2006 PEAR <pear-group@php.net>
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
- * @version 1.8.5
+ * @version Release: 1.8.7
* @link http://pear.php.net/package/Mail_mime
*
* This class is based on HTML Mime Mail class from
@@ -89,7 +89,7 @@ require_once 'Mail/mimePart.php';
* @author Sean Coates <sean@php.net>
* @copyright 2003-2006 PEAR <pear-group@php.net>
* @license http://www.opensource.org/licenses/bsd-license.php BSD License
- * @version Release: 1.8.5
+ * @version Release: 1.8.7
* @link http://pear.php.net/package/Mail_mime
*/
class Mail_mime
@@ -245,7 +245,7 @@ class Mail_mime
}
} else {
$cont = $this->_file2str($data);
- if (PEAR::isError($cont)) {
+ if ($this->_isError($cont)) {
return $cont;
}
if (!$append) {
@@ -286,7 +286,7 @@ class Mail_mime
$this->_htmlbody = $data;
} else {
$cont = $this->_file2str($data);
- if (PEAR::isError($cont)) {
+ if ($this->_isError($cont)) {
return $cont;
}
$this->_htmlbody = $cont;
@@ -336,7 +336,7 @@ class Mail_mime
$filedata = null;
$bodyfile = $file;
} else {
- if (PEAR::isError($filedata = $this->_file2str($file))) {
+ if ($this->_isError($filedata = $this->_file2str($file))) {
return $filedata;
}
}
@@ -416,12 +416,12 @@ class Mail_mime
$filedata = null;
$bodyfile = $file;
} else {
- if (PEAR::isError($filedata = $this->_file2str($file))) {
+ if ($this->_isError($filedata = $this->_file2str($file))) {
return $filedata;
}
}
// Force the name the user supplied, otherwise use $file
- $filename = ($name ? $name : $file);
+ $filename = ($name ? $name : $this->_basename($file));
} else {
$filedata = $file;
$filename = $name;
@@ -432,7 +432,6 @@ class Mail_mime
$err = PEAR::raiseError($msg);
return $err;
}
- $filename = $this->_basename($filename);
$this->_parts[] = array(
'body' => $filedata,
@@ -462,7 +461,7 @@ class Mail_mime
* @return string Contents of $file_name
* @access private
*/
- function &_file2str($file_name)
+ function _file2str($file_name)
{
// Check state of file and raise an error properly
if (!file_exists($file_name)) {
@@ -501,7 +500,7 @@ class Mail_mime
* @return object The text mimePart object
* @access private
*/
- function &_addTextPart(&$obj, $text)
+ function _addTextPart(&$obj, $text)
{
$params['content_type'] = 'text/plain';
$params['encoding'] = $this->_build_params['text_encoding'];
@@ -527,7 +526,7 @@ class Mail_mime
* @return object The html mimePart object
* @access private
*/
- function &_addHtmlPart(&$obj)
+ function _addHtmlPart(&$obj)
{
$params['content_type'] = 'text/html';
$params['encoding'] = $this->_build_params['html_encoding'];
@@ -551,7 +550,7 @@ class Mail_mime
* @return object The multipart/mixed mimePart object
* @access private
*/
- function &_addMixedPart()
+ function _addMixedPart()
{
$params = array();
$params['content_type'] = 'multipart/mixed';
@@ -573,7 +572,7 @@ class Mail_mime
* @return object The multipart/mixed mimePart object
* @access private
*/
- function &_addAlternativePart(&$obj)
+ function _addAlternativePart(&$obj)
{
$params['content_type'] = 'multipart/alternative';
$params['eol'] = $this->_build_params['eol'];
@@ -597,7 +596,7 @@ class Mail_mime
* @return object The multipart/mixed mimePart object
* @access private
*/
- function &_addRelatedPart(&$obj)
+ function _addRelatedPart(&$obj)
{
$params['content_type'] = 'multipart/related';
$params['eol'] = $this->_build_params['eol'];
@@ -620,7 +619,7 @@ class Mail_mime
* @return object The image mimePart object
* @access private
*/
- function &_addHtmlImagePart(&$obj, $value)
+ function _addHtmlImagePart(&$obj, $value)
{
$params['content_type'] = $value['c_type'];
$params['encoding'] = 'base64';
@@ -651,7 +650,7 @@ class Mail_mime
* @return object The image mimePart object
* @access private
*/
- function &_addAttachmentPart(&$obj, $value)
+ function _addAttachmentPart(&$obj, $value)
{
$params['eol'] = $this->_build_params['eol'];
$params['filename'] = $value['name'];
@@ -719,7 +718,7 @@ class Mail_mime
$body = $this->get($params);
- if (PEAR::isError($body)) {
+ if ($this->_isError($body)) {
return $body;
}
@@ -1020,7 +1019,7 @@ class Mail_mime
if ($filename) {
// Append mimePart message headers and body into file
$headers = $message->encodeToFile($filename, $boundary, $skip_head);
- if (PEAR::isError($headers)) {
+ if ($this->_isError($headers)) {
return $headers;
}
$this->_headers = array_merge($this->_headers, $headers);
@@ -1028,7 +1027,7 @@ class Mail_mime
return $ret;
} else {
$output = $message->encode($boundary, $skip_head);
- if (PEAR::isError($output)) {
+ if ($this->_isError($output)) {
return $output;
}
$this->_headers = array_merge($this->_headers, $output['headers']);
@@ -1090,7 +1089,7 @@ class Mail_mime
/**
* Get the text version of the headers
- * (useful if you want to use the PHP mail() function)
+ * (usefull if you want to use the PHP mail() function)
*
* @param array $xtra_headers Assoc array with any extra headers (optional)
* (Don't set Content-Type for multipart messages here!)
@@ -1473,4 +1472,22 @@ class Mail_mime
}
}
+ /**
+ * PEAR::isError wrapper
+ *
+ * @param mixed $data Object
+ *
+ * @return bool True if object is an instance of PEAR_Error
+ * @access private
+ */
+ function _isError($data)
+ {
+ // PEAR::isError() is not PHP 5.4 compatible (see Bug #19473)
+ if (is_object($data) && is_a($data, 'PEAR_Error')) {
+ return true;
+ }
+
+ return false;
+ }
+
} // End of class