From aa48374cc901f60308c4494a6611beb74ac7197c Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Wed, 20 Dec 2017 14:14:57 -0300 Subject: [PATCH] Bug 19855: Remove C4::Letters::findrelatedto This subroutine is called only once. It only concat firstname and surname for subscribers. It can be easily replaced with Koha::Patron --- C4/Letters.pm | 33 +-------------------------------- serials/viewalerts.pl | 6 ++++-- 2 files changed, 5 insertions(+), 34 deletions(-) diff --git a/C4/Letters.pm b/C4/Letters.pm index acf4b65717..ffbf0060f1 100644 --- a/C4/Letters.pm +++ b/C4/Letters.pm @@ -45,7 +45,7 @@ BEGIN { require Exporter; @ISA = qw(Exporter); @EXPORT = qw( - &GetLetters &GetLettersAvailableForALibrary &GetLetterTemplates &DelLetter &GetPreparedLetter &GetWrappedLetter &addalert &getalert &delalert &findrelatedto &SendAlerts &GetPrintMessages &GetMessageTransportTypes + &GetLetters &GetLettersAvailableForALibrary &GetLetterTemplates &DelLetter &GetPreparedLetter &GetWrappedLetter &addalert &getalert &delalert &SendAlerts &GetPrintMessages &GetMessageTransportTypes ); } @@ -333,37 +333,6 @@ sub getalert { return $sth->fetchall_arrayref({}); } -=head2 findrelatedto($type, $externalid) - - parameters : - - $type : the type of alert - - $externalid : the id of the "object" to query - - In the table alert, a "id" is stored in the externalid field. This "id" is related to another table, depending on the type of the alert. - When type=issue, the id is related to a subscriptionid and this sub returns the name of the biblio. - -=cut - -# outmoded POD: -# When type=virtual, the id is related to a virtual shelf and this sub returns the name of the sub - -sub findrelatedto { - my $type = shift or return; - my $externalid = shift or return; - my $q = ($type eq 'issue' ) ? -"select title as result from subscription left join biblio on subscription.biblionumber=biblio.biblionumber where subscriptionid=?" : - ($type eq 'borrower') ? -"select concat(firstname,' ',surname) from borrowers where borrowernumber=?" : undef; - unless ($q) { - warn "findrelatedto(): Illegal type '$type'"; - return; - } - my $sth = C4::Context->dbh->prepare($q); - $sth->execute($externalid); - my ($result) = $sth->fetchrow; - return $result; -} - =head2 SendAlerts my $err = &SendAlerts($type, $externalid, $letter_code); diff --git a/serials/viewalerts.pl b/serials/viewalerts.pl index 7ee90b39ec..8302c988c9 100755 --- a/serials/viewalerts.pl +++ b/serials/viewalerts.pl @@ -47,8 +47,10 @@ my $subscriptionid=$input->param('subscriptionid'); my $borrowers = getalert('','issue',$subscriptionid); my $subscription = GetSubscription($subscriptionid); -foreach (@$borrowers) { - $_->{name} = findrelatedto('borrower',$_->{borrowernumber}); +for my $borrowernumber (@$borrowers) { + my $patron = Koha::Patrons->find( $borrowernumber ); + next unless $borrowernumber; # Just in case... + $borrowers->{name} = join( ' ', $patron->firstname, $patron->surname ); } $template->param(alertloop => $borrowers, bibliotitle => $subscription->{bibliotitle}, -- 2.11.0