X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/kivitendo-erp.git/blobdiff_plain/de46c7042907923c9b88af67849dddab9a5101ba..7df63f1575c1987f699ee99a19b95da00703e8d0:/SL/Mailer.pm diff --git a/SL/Mailer.pm b/SL/Mailer.pm index 3cf205364..02b117398 100644 --- a/SL/Mailer.pm +++ b/SL/Mailer.pm @@ -33,8 +33,11 @@ package Mailer; use Email::Address; use SL::Common; +use SL::MIME; use SL::Template; +use strict; + my $num_sent = 0; sub new { @@ -181,10 +184,10 @@ $self->{message} $filename =~ s/(.*\/|\Q$self->{fileid}\E)//g; } - my $application = - ($attachment =~ /(^\w+$)|\.(html|text|txt|sql)$/) - ? "text" - : "application"; + my $application = ($attachment =~ /(^\w+$)|\.(html|text|txt|sql)$/) ? "text" : "application"; + my $content_type = SL::MIME->mime_type_from_ext($filename); + $content_type = "${application}/$self->{format}" if (!$content_type && $self->{format}); + $content_type ||= 'application/octet-stream'; open(IN, $attachment); if ($?) { @@ -201,7 +204,7 @@ $self->{message} } print OUT qq|--${boundary} -Content-Type: $application/$self->{format}; name="$filename"$attachment_charset +Content-Type: ${content_type}; name="$filename"$attachment_charset Content-Transfer-Encoding: BASE64 Content-Disposition: attachment; filename="$filename"\n\n|;