/**
  * Send a multi-part HTML email.
  *
  * @return bool
  */
 function sendHTML($to, $from, $subject, $htmlContent, $attachedFiles = false, $customheaders = false, $plainContent = false, $inlineImages = false)
 {
     $message = $this->initEmail($to, $from, $subject, $attachedFiles, $customheaders);
     // set up the body
     // @todo inlineimages
     $message['html'] = $htmlContent;
     if ($plainContent) {
         $message['text'] = $plainContent;
     }
     // send and return
     try {
         $mail = $this->initMailer();
         $result = $mail->messages->send($message, $this->async, $this->ip_pool, $this->send_at);
         foreach ($result as $sentmessage) {
             $MandrillMessage = new MandrillMessage();
             $MandrillMessage->MandrillID = $sentmessage['_id'];
             $MandrillMessage->To = $to;
             $MandrillMessage->From = $from;
             $MandrillMessage->Subject = $subject;
             if (isset($sentmessage['status'])) {
                 $MandrillMessage->MandrillStatus = $sentmessage['status'];
             }
             if (isset($sentmessage['reject_reason'])) {
                 $MandrillMessage->MandrillRejectReason = $sentmessage['reject_reason'];
             }
             $MandrillMessage->MandrillMessage = json_encode($message);
             $MandrillMessage->write();
         }
         return true;
     } catch (Mandrill_Error $e) {
         // Mandrill errors are thrown as exceptions
         user_error('A mandrill error occurred: ' . get_class($e) . ' - ' . $e->getMessage());
         // A mandrill error occurred: Mandrill_Unknown_Subaccount - No subaccount exists with the id 'customer-123'
     } catch (Exception $e) {
         error_log('Unknown');
         return $this->httpError(400, 'An error occurred');
     }
 }