Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Evaluates the message and returns modifications for inline images and backgrounds
- *
- * @access private
- * @param string $message
- * @param string $basedir
- * @return string $message
- * */
- private function MsgHTML($message, $basedir = MODX_BASE_PATH) {
- preg_match_all("/(src)=\"(.*)\"/Ui", $message, $images);
- if(isset($images[2])) {
- foreach($images[2] as $i => $url) {
- // do not change urls for absolute images (thanks to corvuscorax)
- if (!preg_match('/^[A-z][A-z]*:\/\//',$url)) {
- $filename = basename($url);
- $directory = dirname($url);
- ($directory == '.')?$directory='':'';
- $cid = 'cid:' . md5($filename);
- $fileParts = preg_split("/\./", $filename);
- $ext = $fileParts[1];
- $mimeType = $this->modx->mail->mailer->_mime_types($ext);
- if ( strlen($basedir) > 1 && substr($basedir,-1) != '/') { $basedir .= '/'; }
- if ( strlen($directory) > 1 && substr($directory,-1) != '/') { $directory .= '/'; }
- if ( $this->modx->mail->mailer->AddEmbeddedImage($basedir.$directory.$filename, md5($filename), $filename, 'base64',$mimeType) ) {
- $message = preg_replace("/".$images[1][$i]."=\"".preg_quote($url, '/')."\"/Ui", $images[1][$i]."=\"".$cid."\"", $message);
- }
- }
- }
- }
- return $message;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement