1 # Copyright 2014 Catalyst
3 # This file is part of Koha.
5 # Koha is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 3 of the License, or
8 # (at your option) any later version.
10 # Koha is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with Koha; if not, see <http://www.gnu.org/licenses>.
24 use base
qw(Class::Accessor);
27 __PACKAGE__
->mk_accessors(qw( ));
36 my $email = Koha::Email->new();
37 my %mail = $email->create_message_headers({ to => $to_address, from => $from_address,
38 replyto => $replyto });
44 sub create_message_headers
{
47 $params->{from
} ||= C4
::Context
->preference('KohaAdminEmailAddress');
48 $params->{charset
} ||= 'utf8';
51 From
=> $params->{from
},
52 charset
=> $params->{charset
}
55 if (C4
::Context
->preference('SendAllEmailsTo') && Email
::Valid
->address(C4
::Context
->preference('SendAllEmailsTo'))) {
56 $mail{'To'} = C4
::Context
->preference('SendAllEmailsTo');
59 $mail{'Cc'} = $params->{cc
};
60 $mail{'Bcc'} = $params->{bcc
};
63 if ( C4
::Context
->preference('ReplytoDefault') ) {
64 $params->{replyto
} ||= C4
::Context
->preference('ReplytoDefault');
66 if ( C4
::Context
->preference('ReturnpathDefault') ) {
67 $params->{sender
} ||= C4
::Context
->preference('ReturnpathDefault');
69 $mail{'Reply-to'} = $params->{replyto
} if $params->{replyto
};
70 $mail{'Sender'} = $params->{sender
} if $params->{sender
};
71 $mail{'Message'} = $params->{message
} if $params->{message
};
72 $mail{'Subject'} = $params->{subject
} if $params->{subject
};
73 $mail{'Content-Type'} = $params->{contenttype
} if $params->{contenttype
};
74 $mail{'X-Mailer'} = "Koha";
75 $mail{'Message-ID'} = Email
::MessageID
->new->in_brackets;