You are here

function webform2pdf_mail_alter in Webform2PDF 6.2

Same name and namespace in other branches
  1. 6 webform2pdf.module \webform2pdf_mail_alter()
  2. 7.4 webform2pdf.module \webform2pdf_mail_alter()
  3. 7.3 webform2pdf.module \webform2pdf_mail_alter()

File

./webform2pdf.module, line 744

Code

function webform2pdf_mail_alter(&$message) {
  if ($message['id'] == 'webform_submission') {
    $webform2pdf_send2pdf = webform2pdf_send2pdf($message['params']['node'], $message['params']['submission']);
    if (isset($webform2pdf_send2pdf['nid'])) {
      $attach_pdf = 1;
      if (!empty($webform2pdf_send2pdf['nopdf'])) {
        if (in_array($message['to'], $webform2pdf_send2pdf['nopdf'])) {
          $attach_pdf = 0;
        }
      }
      if ($attach_pdf) {
        if (module_exists('mimemail')) {
          $node = node_load($webform2pdf_send2pdf['nid']);
          $attachment = new stdClass();
          $attachment->filecontent = theme('webform2pdf_mail2pdf', $webform2pdf_send2pdf['nid'], $webform2pdf_send2pdf['sid']);
          $attachment->filename = theme('webform2pdf_filename', $node, $webform2pdf_send2pdf['sid']);
          $attachment->filemime = 'application/pdf';
          $message['params']['attachments'][] = $attachment;
        }
        else {
          $trenner = '------------' . md5(uniqid(time()));
          $content_type = $message['headers']['Content-Type'];
          $message['headers']['Content-Type'] = 'multipart/mixed; boundary="' . $trenner . '"';
          unset($message['headers']['Content-Transfer-Encoding']);
          $body = "\n--" . $trenner . "\n" . "Content-Type: " . $content_type . "\n" . "Content-Transfer-Encoding: 8bit\n\n";
          $body .= is_array($message['body']) ? drupal_wrap_mail(implode("\n\n", $message['body'])) : drupal_wrap_mail($message['body']);
          unset($message['body']);
          $message['body'] = $body;
          unset($body);
          $node = node_load($webform2pdf_send2pdf['nid']);
          $filename = theme('webform2pdf_filename', $node, $webform2pdf_send2pdf['sid']);
          unset($node);
          $message['body'] .= "\n\n--" . $trenner . "\n";
          $message['body'] .= "Content-Type: application/pdf; name=\"" . $filename . "\"\n";
          $message['body'] .= "Content-Transfer-Encoding: base64\n";
          $message['body'] .= "Content-Disposition: attachment; filename=\"" . $filename . "\"\n\n";
          $message['body'] .= chunk_split(base64_encode(theme('webform2pdf_mail2pdf', $webform2pdf_send2pdf['nid'], $webform2pdf_send2pdf['sid'])));
          $message['body'] .= "\n\n";
          $message['body'] .= "--" . $trenner . "--";
        }
      }
    }
  }
}