class mime_mail in Backup and Migrate 6.3
Same name and namespace in other branches
- 8.2 includes/destinations.email.inc \mime_mail
- 8.3 includes/destinations.email.inc \mime_mail
- 6.2 includes/destinations.email.inc \mime_mail
- 7.3 includes/destinations.email.inc \mime_mail
- 7.2 includes/destinations.email.inc \mime_mail
Hierarchy
- class \mime_mail
Expanded class hierarchy of mime_mail
File
- includes/
destinations.email.inc, line 88 - Functions to handle the email backup destination.
View source
class mime_mail {
var $parts;
var $to;
var $from;
var $headers;
var $subject;
var $body;
function mime_mail() {
$this->parts = array();
$this->to = "";
$this->from = "";
$this->headers = "";
$this->subject = "";
$this->body = "";
}
function add_attachment($message, $name = "", $ctype = "application/octet-stream", $encode = NULL, $attach = FALSE) {
$this->parts[] = array(
"ctype" => $ctype,
"message" => $message,
"encode" => $encode,
"name" => $name,
"attach" => $attach,
);
}
function build_message($part) {
$message = $part["message"];
$message = chunk_split(base64_encode($message));
$encoding = "base64";
$disposition = $part['attach'] ? "Content-Disposition: attachment; filename={$part['name']}\n" : '';
return "Content-Type: " . $part["ctype"] . ($part["name"] ? "; name = \"" . $part["name"] . "\"" : "") . "\nContent-Transfer-Encoding: {$encoding}\n{$disposition}\n{$message}\n";
}
function build_multipart() {
$boundary = "b" . md5(uniqid(time()));
$multipart = "Content-Type: multipart/mixed; boundary = {$boundary}\n\nThis is a MIME encoded message.\n\n--{$boundary}";
for ($i = sizeof($this->parts) - 1; $i >= 0; $i--) {
$multipart .= "\n" . $this
->build_message($this->parts[$i]) . "--{$boundary}";
}
return $multipart .= "--\n";
}
function send() {
$mime = "";
if (!empty($this->from)) {
$mime .= "From: " . $this->from . "\n";
}
if (!empty($this->headers)) {
$mime .= $this->headers . "\n";
}
if (!empty($this->body)) {
$this
->add_attachment($this->body, "", "text/plain");
}
$mime .= "MIME-Version: 1.0\n" . $this
->build_multipart();
mail(trim($this->to), $this->subject, "", $mime);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
mime_mail:: |
property | |||
mime_mail:: |
property | |||
mime_mail:: |
property | |||
mime_mail:: |
property | |||
mime_mail:: |
property | |||
mime_mail:: |
property | |||
mime_mail:: |
function | |||
mime_mail:: |
function | |||
mime_mail:: |
function | |||
mime_mail:: |
function | |||
mime_mail:: |
function |