X-Git-Url: https://git-public.kairo.at/?p=php-utility-classes.git;a=blobdiff_plain;f=include%2Fclasses%2Femail.php-class;h=c7e1ee4f657e3d95fef5d852bde131b84267f09f;hp=bf7273c4d44e57b36aa0acac4870b381a7afab2d;hb=ba79b48c782b861d2086d19ac496a9fecb09e403;hpb=025016ca6af3725769ac5a68ac4fd6a9b184e095 diff --git a/include/classes/email.php-class b/include/classes/email.php-class index bf7273c..c7e1ee4 100755 --- a/include/classes/email.php-class +++ b/include/classes/email.php-class @@ -182,11 +182,16 @@ class email { if (count($this->recipients)) { $recpt = ''; foreach ($this->recipients as $address) { - if (strlen($address['name'])) { $recpt .= $this->mimeencode($address['name'], true).' <'.$address['mail'].'>,'; } - else { $recpt .= $address['mail'].','; } + if (strlen(@$address['mail'])) { + if (strlen($address['name'])) { $recpt .= $this->mimeencode($address['name'], true).' <'.$address['mail'].'>,'; } + else { $recpt .= $address['mail'].','; } + } } $recpt = preg_replace('/,$/', '', $recpt); } + if (!strlen($recpt)) { + return null; + } if (count($this->cc)) { $adrs = ''; foreach ($this->cc as $address) { @@ -247,12 +252,20 @@ class email { foreach ($this->attachments as $attach) { $mtxt .= "\n".'--'.$boundary."\n"; $mtxt .= 'Content-Type: '.$attach['type'].'; name="'.$attach['name'].'";'."\n"; - $mtxt .= 'Content-Transfer-Encoding: base64'."\n"; - $mtxt .= 'Content-Disposition: attachment'."\n\n"; - $mtxt .= rtrim(chunk_split(base64_encode($attach['content']), 76)); ; - $mtxt .= "\n"; + if (preg_match('/^(text|message)\//', $attach['type'])) { + $mtxt .= 'Content-Transfer-Encoding: 8bit'."\n"; + $mtxt .= 'Content-Disposition: attachment'."\n\n"; + $mtxt .= $attach['content']; + $mtxt .= "\n"; + } + else { + $mtxt .= 'Content-Transfer-Encoding: base64'."\n"; + $mtxt .= 'Content-Disposition: attachment'."\n\n"; + $mtxt .= rtrim(chunk_split(base64_encode($attach['content']), 76)); ; + $mtxt .= "\n"; + } } - $mtext .= '--'.$boundary.'--'."\n"; + $mtxt .= '--'.$boundary.'--'."\n"; } if (strlen($this->debug_toSingleAddress)) {