-sub send {
- $main::lxdebug->enter_sub();
-
- my ($self, $out) = @_;
-
- my $boundary = time;
- $boundary = "SL-$self->{version}-$boundary";
- my $domain = $self->{from};
- $domain =~ s/(.*?\@|>)//g;
- my $msgid = "$boundary\@$domain";
-
- $self->{charset} = "ISO-8859-1" unless $self->{charset};
-
- if ($out) {
- if (!open(OUT, $out)) {
- $main::lxdebug->leave_sub();
- return "$out : $!";
- }
- } else {
- if (!open(OUT, ">-")) {
- $main::lxdebug->leave_sub();
- return "STDOUT : $!";
- }
- }
+ my %params = (
+ mailer => $self,
+ form => $::form,
+ myconfig => \%::myconfig,
+ );
+
+ my $module = ($::lx_office_conf{mail_delivery}->{method} || 'smtp') ne 'smtp' ? 'SL::Mailer::Sendmail' : 'SL::Mailer::SMTP';
+ eval "require $module" or return undef;