Version 3.4.5
This commit is contained in:
1 parent
fb6b5baabc
commit
e4478369d8
1360 files changed
+228921
-179445
No files matched your search
@@ -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 CVS: $Id: mime.php 8229 2011-03-31 10:17:44Z ips_terabyte $
|
||||
* @version CVS: $Id: mime.php 11977 2013-02-12 11:06:34Z mark $
|
||||
* @link http://pear.php.net/package/Mail_mime
|
||||
*
|
||||
* This class is based on HTML Mime Mail class from
|
||||
@@ -63,7 +63,7 @@
|
||||
*
|
||||
* This package depends on PEAR to raise errors.
|
||||
*/
|
||||
require_once 'PEAR.php';/*noLibHook*/
|
||||
require_once 'PEAR.php';
|
||||
|
||||
/**
|
||||
* require Mail_mimePart
|
||||
@@ -72,7 +72,7 @@ require_once 'PEAR.php';/*noLibHook*/
|
||||
* create all the different parts a mail can
|
||||
* consist of.
|
||||
*/
|
||||
require_once 'Mail/mimePart.php';/*noLibHook*/
|
||||
require_once 'Mail/mimePart.php';
|
||||
|
||||
|
||||
/**
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
@@ -387,6 +387,8 @@ class Mail_mime
|
||||
* @param string $description Content-Description header
|
||||
* @param string $h_charset The character set of the headers e.g. filename
|
||||
* If not specified, $charset will be used
|
||||
* @param array $add_headers Additional part headers. Array keys can be in form
|
||||
* of <header_name>:<parameter_name>
|
||||
*
|
||||
* @return mixed True on success or PEAR_Error object
|
||||
* @access public
|
||||
@@ -403,7 +405,8 @@ class Mail_mime
|
||||
$n_encoding = null,
|
||||
$f_encoding = null,
|
||||
$description = '',
|
||||
$h_charset = null
|
||||
$h_charset = null,
|
||||
$add_headers = array()
|
||||
) {
|
||||
$bodyfile = null;
|
||||
|
||||
@@ -413,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;
|
||||
@@ -429,7 +432,6 @@ class Mail_mime
|
||||
$err = PEAR::raiseError($msg);
|
||||
return $err;
|
||||
}
|
||||
$filename = $this->_basename($filename);
|
||||
|
||||
$this->_parts[] = array(
|
||||
'body' => $filedata,
|
||||
@@ -442,6 +444,7 @@ class Mail_mime
|
||||
'location' => $location,
|
||||
'disposition' => $disposition,
|
||||
'description' => $description,
|
||||
'add_headers' => $add_headers,
|
||||
'name_encoding' => $n_encoding,
|
||||
'filename_encoding' => $f_encoding,
|
||||
'headers_charset' => $h_charset,
|
||||
@@ -458,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)) {
|
||||
@@ -497,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'];
|
||||
@@ -523,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'];
|
||||
@@ -547,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';
|
||||
@@ -569,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'];
|
||||
@@ -593,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'];
|
||||
@@ -616,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';
|
||||
@@ -647,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'];
|
||||
@@ -680,6 +683,9 @@ class Mail_mime
|
||||
if (!empty($value['description'])) {
|
||||
$params['description'] = $value['description'];
|
||||
}
|
||||
if (is_array($value['add_headers'])) {
|
||||
$params['headers'] = $value['add_headers'];
|
||||
}
|
||||
|
||||
$ret = $obj->addSubpart($value['body'], $params);
|
||||
return $ret;
|
||||
@@ -712,7 +718,7 @@ class Mail_mime
|
||||
|
||||
$body = $this->get($params);
|
||||
|
||||
if (PEAR::isError($body)) {
|
||||
if ($this->_isError($body)) {
|
||||
return $body;
|
||||
}
|
||||
|
||||
@@ -1013,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);
|
||||
@@ -1021,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']);
|
||||
@@ -1142,8 +1148,8 @@ class Mail_mime
|
||||
? $this->_build_params['eol'] : "\r\n";
|
||||
|
||||
// add parameters
|
||||
$token_regexp = '#([^\x21,\x23-\x27,\x2A,\x2B,\x2D'
|
||||
. ',\x2E,\x30-\x39,\x41-\x5A,\x5E-\x7E])#';
|
||||
$token_regexp = '#([^\x21\x23-\x27\x2A\x2B\x2D'
|
||||
. '\x2E\x30-\x39\x41-\x5A\x5E-\x7E])#';
|
||||
if (is_array($params)) {
|
||||
foreach ($params as $name => $value) {
|
||||
if ($name == 'boundary') {
|
||||
@@ -1319,7 +1325,8 @@ class Mail_mime
|
||||
*/
|
||||
function encodeHeader($name, $value, $charset, $encoding)
|
||||
{
|
||||
return Mail_mimePart::encodeHeader(
|
||||
$mime_part = new Mail_mimePart;
|
||||
return $mime_part->encodeHeader(
|
||||
$name, $value, $charset, $encoding, $this->_build_params['eol']
|
||||
);
|
||||
}
|
||||
@@ -1465,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
|
||||
Reference in new issue
Block a user