Bugzilla – Attachment 122073 Details for
Bug 28581
Patron's queue_notice uses inbound_email_address incorrectly
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 28581: Add 'from_email_address' method and use in Koha::Patron
Bug-28581-Add-fromemailaddress-method-and-use-in-K.patch (text/plain), 4.27 KB, created by
Martin Renvoize (ashimema)
on 2021-06-17 13:37:46 UTC
(
hide
)
Description:
Bug 28581: Add 'from_email_address' method and use in Koha::Patron
Filename:
MIME Type:
Creator:
Martin Renvoize (ashimema)
Created:
2021-06-17 13:37:46 UTC
Size:
4.27 KB
patch
obsolete
>From e834d113c434537f02fc32be0eb04ae6cdacaddd Mon Sep 17 00:00:00 2001 >From: Martin Renvoize <martin.renvoize@ptfs-europe.com> >Date: Thu, 17 Jun 2021 09:54:46 +0100 >Subject: [PATCH] Bug 28581: Add 'from_email_address' method and use in > Koha::Patron > >This patch adds a new 'from_email_address' method to Koha::Library to >return the appropriate email address to use as the 'from' field for >email notices from the library. > >We then update Koha::Patron->queue_notice to use this new method instead >of the incorrect inbound_email_address. > >I also update the POD for inbound_email_address to clarify it's use >case. > >Test plan > >Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> >--- > Koha/Library.pm | 23 +++++++++++++++++++++++ > Koha/Patron.pm | 4 ++-- > t/db_dependent/Koha/Libraries.t | 32 +++++++++++++++++++++++++++++++- > 3 files changed, 56 insertions(+), 3 deletions(-) > >diff --git a/Koha/Library.pm b/Koha/Library.pm >index 676c9e8da2..af2319a3f6 100644 >--- a/Koha/Library.pm >+++ b/Koha/Library.pm >@@ -143,12 +143,35 @@ sub smtp_server { > return $self; > } > >+=head3 from_email_address >+ >+ my $from_email = Koha::Library->from_email_address; >+ >+Returns the official 'from' email address for the branch. >+ >+It may well be a 'noreply' or other inaccessible local domain >+address that is being used to satisfy spam protection filters. >+ >+=cut >+ >+sub from_email_address { >+ my ($self) = @_; >+ >+ return >+ $self->branchemail >+ || C4::Context->preference('KohaAdminEmailAddress') >+ || undef; >+} >+ > =head3 inbound_email_address > > my $to_email = Koha::Library->inbound_email_address; > > Returns an effective email address which should be accessible to librarians at the branch. > >+NOTE: This is the address to use for 'reply_to' or 'to' fields; It should not usually be >+used as the 'from' address for emails as it may lead to mail being caught by spam filters. >+ > =cut > > sub inbound_email_address { >diff --git a/Koha/Patron.pm b/Koha/Patron.pm >index dc87674f4d..a8379f6228 100644 >--- a/Koha/Patron.pm >+++ b/Koha/Patron.pm >@@ -1874,7 +1874,7 @@ sub queue_notice { > return unless exists $params->{message_name} xor $params->{message_transports}; # We only want one of these > > my $library = Koha::Libraries->find( $letter_params->{branchcode} ); >- my $admin_email_address = $library->inbound_email_address; >+ my $from_email_address = $library->from_email_address; > > my @message_transports; > my $letter_code; >@@ -1909,7 +1909,7 @@ sub queue_notice { > C4::Letters::EnqueueLetter({ > letter => $letter, > borrowernumber => $self->borrowernumber, >- from_address => $admin_email_address, >+ from_address => $from_email_address, > message_transport_type => $mtt > }) unless $test_mode; > push @{$return{sent}}, $mtt; >diff --git a/t/db_dependent/Koha/Libraries.t b/t/db_dependent/Koha/Libraries.t >index b66fa89d63..48a258dc7a 100755 >--- a/t/db_dependent/Koha/Libraries.t >+++ b/t/db_dependent/Koha/Libraries.t >@@ -19,7 +19,7 @@ > > use Modern::Perl; > >-use Test::More tests => 11; >+use Test::More tests => 12; > > use C4::Biblio; > use C4::Context; >@@ -119,6 +119,36 @@ subtest '->get_effective_marcorgcode' => sub { > $schema->storage->txn_rollback; > }; > >+subtest '->from_email_address' => sub { >+ >+ plan tests => 3; >+ >+ $schema->storage->txn_begin; >+ >+ my $library_1 = $builder->build_object( >+ { >+ class => 'Koha::Libraries', >+ value => { >+ branchemail => 'from@mybranc.com', >+ } >+ } >+ ); >+ >+ t::lib::Mocks::mock_preference( 'KohaAdminEmailAddress', 'admin@mylibrary.com' ); >+ >+ is( $library_1->from_email_address, $library_1->branchemail, >+ 'If defined, use branches branchemail address'); >+ >+ $library_1->branchemail(undef)->store(); >+ is( $library_1->from_email_address, 'admin@mylibrary.com', >+ 'Fallback to KohaAdminEmailAddress email address when branchemail is undefined'); >+ >+ t::lib::Mocks::mock_preference( 'KohaAdminEmailAddress', '' ); >+ is( $library_1->from_email_address, undef, >+ 'Return undef when branchemail and KohaAdminEmailAddress are both undefined'); >+ $schema->storage->txn_rollback; >+}; >+ > subtest '->inbound_email_address' => sub { > > plan tests => 5; >-- >2.20.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 28581
:
122056
|
122057
|
122061
|
122062
|
122063
|
122067
|
122068
|
122071
|
122072
|
122073
|
122074
|
122075
|
122076
|
122078
|
122080
|
122081
|
122136
|
122137
|
122138
|
122139
|
122140
|
122212