From dpavlin at rot13.org Wed Jan 18 18:14:56 2017 From: dpavlin at rot13.org (Dobrica Pavlinusic) Date: Wed, 18 Jan 2017 18:14:56 +0100 Subject: [Koha-patches] [PATCH] Bug 17933 - Internal software error when searching patron without birth date Message-ID: <1484759696-16737-1-git-send-email-dpavlin@rot13.org> When patrons don't have date of birth (which is not required) patron search results on moremember page produce internal server error since we can't convert MySQL invalid date 0000-00-00 to datetime object and call strfdate on it. Additionally, since we assign dates to template variables and after than assign whole $data hash to template, later assigment overrides previous one, so we see birth date field even for patrons which don't have one. This patch fixes both of those problems. Test: 1. edit patron and remove it's birth date 2. try to search for it, and verify server error 3. apply patch 4. repeat search for patron and verify that it works and doesn't have enpty birth date field --- Koha/Patron.pm | 3 ++- members/moremember.pl | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Koha/Patron.pm b/Koha/Patron.pm index 3790884..1b9ece4 100644 --- a/Koha/Patron.pm +++ b/Koha/Patron.pm @@ -544,7 +544,8 @@ Return the age of the patron sub get_age { my ($self) = @_; my $today_str = dt_from_string->strftime("%Y-%m-%d"); - my $dob_str = dt_from_string( $self->dateofbirth )->strftime("%Y-%m-%d"); + my $dob_str = dt_from_string( $self->dateofbirth ) || return; + $dob_str = $dob_str->strftime("%Y-%m-%d"); my ( $dob_y, $dob_m, $dob_d ) = split /-/, $dob_str; my ( $today_y, $today_m, $today_d ) = split /-/, $today_str; diff --git a/members/moremember.pl b/members/moremember.pl index 55b0901..07277d5 100755 --- a/members/moremember.pl +++ b/members/moremember.pl @@ -140,7 +140,7 @@ foreach (qw(dateenrolled dateexpiry dateofbirth)) { $data->{$_} = ''; next; } - $template->param( $_ => dt_from_string( $userdate ) ); + $data->{$_} = dt_from_string( $userdate ); } $data->{'IS_ADULT'} = ( $data->{'categorycode'} ne 'I' ); -- 2.1.4 From dpavlin at rot13.org Mon Jan 30 12:44:31 2017 From: dpavlin at rot13.org (Dobrica Pavlinusic) Date: Mon, 30 Jan 2017 12:44:31 +0100 Subject: [Koha-patches] [PATCH] Bug 17775 - Add new user with LDAP not works under Plack Message-ID: <1485776671-27285-1-git-send-email-dpavlin@rot13.org> This patch fixes internal server error: Undefined subroutine &C4::Auth_with_ldap::AddMember called at /srv/koha_ffzg/C4/Auth_with_ldap.pm line 213. It occurs only under plack, and it's strange since C4::Members does EXPORT AddMember and we are importing it into Auth_with_ldap.pm (and it does work under CGI). --- C4/Auth_with_ldap.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/C4/Auth_with_ldap.pm b/C4/Auth_with_ldap.pm index a58f4e6..3a7c3e3 100644 --- a/C4/Auth_with_ldap.pm +++ b/C4/Auth_with_ldap.pm @@ -210,7 +210,7 @@ sub checkpw_ldap { return(1, $cardnumber, $local_userid); } } elsif ($config{replicate}) { # A2, C2 - $borrowernumber = AddMember(%borrower) or die "AddMember failed"; + $borrowernumber = C4::Members::AddMember(%borrower) or die "AddMember failed"; C4::Members::Messaging::SetMessagingPreferencesFromDefaults( { borrowernumber => $borrowernumber, categorycode => $borrower{'categorycode'} } ); } else { return 0; # B2, D2 -- 2.1.4 From dpavlin at rot13.org Mon Jan 30 13:04:22 2017 From: dpavlin at rot13.org (Dobrica Pavlinusic) Date: Mon, 30 Jan 2017 13:04:22 +0100 Subject: [Koha-patches] [PATCH] Bug 18013 - acqui/transferorder.pl typo in find method Message-ID: <1485777862-30618-1-git-send-email-dpavlin@rot13.org> This typo was introduced in Bug 13726 and has obvious fix --- acqui/transferorder.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/acqui/transferorder.pl b/acqui/transferorder.pl index 6cd1d2e..716c721 100755 --- a/acqui/transferorder.pl +++ b/acqui/transferorder.pl @@ -60,7 +60,7 @@ my $booksellerfromname; if($booksellerfrom){ $booksellerfromname = $booksellerfrom->name; } -my $booksellerto = Koha::Acquisition::Booksellers->finf( $bookselleridto ); +my $booksellerto = Koha::Acquisition::Booksellers->find( $bookselleridto ); my $booksellertoname; if($booksellerto){ $booksellertoname = $booksellerto->name; -- 2.1.4