1 # Copyright 2014 Catalyst
3 # This file is part of Koha.
5 # Koha is free software; you can redistribute it and/or modify it under the
6 # terms of the GNU General Public License as published by the Free Software
7 # Foundation; either version 3 of the License, or (at your option) any later
10 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
11 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12 # A PARTICULAR PURPOSE. See the GNU General Public License for more details.
14 # You should have received a copy of the GNU General Public License along
15 # with Koha; if not, write to the Free Software Foundation, Inc.,
16 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
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;