You are here

function _backup_migrate_destination_email_mail_backup in Backup and Migrate 8.2

Same name and namespace in other branches
  1. 8.3 includes/destinations.email.inc \_backup_migrate_destination_email_mail_backup()
  2. 5.2 includes/destinations.email.inc \_backup_migrate_destination_email_mail_backup()
  3. 6.3 includes/destinations.email.inc \_backup_migrate_destination_email_mail_backup()
  4. 6.2 includes/destinations.email.inc \_backup_migrate_destination_email_mail_backup()
  5. 7.3 includes/destinations.email.inc \_backup_migrate_destination_email_mail_backup()
  6. 7.2 includes/destinations.email.inc \_backup_migrate_destination_email_mail_backup()

@function Temporary mail handler class.

Defines a mail class to send a message with an attachment. Eventually Drupal core should provide this functionality, at which time this code will be removed.

More info on sending email at <http://php.net/function.mail>. This function taken from dba.module.

Parameters

$attachment: An object which contains two variables "path" the path to the file and filename and "filename" which is just the filename.

1 call to _backup_migrate_destination_email_mail_backup()
backup_migrate_destination_email::save_file in includes/destinations.email.inc
Save to (ie. email the file) to the email destination.

File

includes/destinations.email.inc, line 74
Functions to handle the email backup destination.

Code

function _backup_migrate_destination_email_mail_backup($attachment, $to) {

  // Send mail
  $attach = fread(fopen($attachment->path, "r"), filesize($attachment->path));
  $mail = new mime_mail();
  $mail->from = variable_get('site_mail', ini_get('sendmail_from'));
  $mail->headers = 'Errors-To: [EMAIL=' . $mail->from . ']' . $mail->from . '[/EMAIL]';
  $mail->to = $to;
  $mail->subject = t('Database backup from !site: !file', array(
    '!site' => variable_get('site_name', 'drupal'),
    '!file' => $attachment->filename,
  ));
  $mail->body = t('Database backup attached.') . "\n\n";
  $mail
    ->add_attachment("{$attach}", $attachment->filename, "Content-Transfer-Encoding: base64 /9j/4AAQSkZJRgABAgEASABIAAD/7QT+UGhvdG9zaG", NULL, TRUE);
  $mail
    ->send();
}