From 2dfd7a70a309420c414b9b424b7772190af1e848 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Fri, 17 Oct 2014 07:52:13 -0400 Subject: [PATCH] [PASSED QA] Bug 13084 [Master] - QA Followup - Use DBIx::Class to simplify logic Signed-off-by: Kyle M Hall --- C4/Members.pm | 31 +++++++++---------------------- 1 files changed, 9 insertions(+), 22 deletions(-) diff --git a/C4/Members.pm b/C4/Members.pm index c243f69..e421940 100644 --- a/C4/Members.pm +++ b/C4/Members.pm @@ -1813,28 +1813,15 @@ The routine returns 1 for success, undef for failure. sub MoveMemberToDeleted { my ($member) = shift or return; - my $dbh = C4::Context->dbh; - my $query = qq|SELECT * - FROM borrowers - WHERE borrowernumber=?|; - my $sth = $dbh->prepare($query); - $sth->execute($member); - my $data = $sth->fetchrow_hashref; - return if !$data; # probably bad borrowernumber - - #now construct a insert query that does not depend on the same order of - #columns in borrowers and deletedborrowers (see BZ 13084) - my $insertq = "INSERT INTO deletedborrowers ("; - my @values; - foreach my $key ( keys %$data ) { - $insertq.= $key.","; - push @values, $data->{$key}; - } - $insertq =~ s/,$//; #remove last comma - $insertq .= ") VALUES (" . ( "?," x ( scalar(@values) - 1 ) ) . "?)"; - $sth = $dbh->prepare( $insertq ); - $sth->execute(@values); - return $sth->err? undef: 1; + + my $schema = Koha::Database->new()->schema(); + my $borrowers_rs = $schema->resultset('Borrower'); + $borrowers_rs->result_class('DBIx::Class::ResultClass::HashRefInflator'); + my $borrower = $borrowers_rs->find($member); + + my $deleted = $schema->resultset('Deletedborrower')->create($borrower); + + return $deleted ? 1 : undef; } =head2 DelMember -- 1.7.2.5