From 1513dfd4387a56cb8c31a7b2a44387523977146b Mon Sep 17 00:00:00 2001
From: Kyle M Hall <kyle@bywatersolutions.com>
Date: Thu, 5 Jun 2014 11:26:40 -0400
Subject: [PATCH] Bug 12375 [4] - Replace use of DBI with Koha::Database in C4::Serials::NewIssue

---
 C4/Serials.pm |   37 ++++++++++++++++---------------------
 1 files changed, 16 insertions(+), 21 deletions(-)

diff --git a/C4/Serials.pm b/C4/Serials.pm
index 45fea56..7ce3888 100644
--- a/C4/Serials.pm
+++ b/C4/Serials.pm
@@ -1630,36 +1630,31 @@ sub NewIssue {
         }
     );
 
-    my $dbh   = C4::Context->dbh;
     my $serialid = $serial->serialid();
 
-    my $query = qq|
-        SELECT missinglist,recievedlist
-        FROM   subscriptionhistory
-        WHERE  subscriptionid=?
-    |;
-    my $sth = $dbh->prepare($query);
-    $sth->execute($subscriptionid);
-    my ( $missinglist, $recievedlist ) = $sth->fetchrow;
+    my $subscription_history = $schema->resultset('Subscriptionhistory')->find($subscriptionid);
+    my $missinglist = $subscription_history->missinglist();
+    my $recievedlist = $subscription_history->recievedlist();
 
     if ( $status == 2 ) {
-      ### TODO Add a feature that improves recognition and description.
-      ### As such count (serialseq) i.e. : N18,2(N19),N20
-      ### Would use substr and index But be careful to previous presence of ()
-        $recievedlist .= "; $serialseq" unless (index($recievedlist,$serialseq)>0);
+        ### TODO Add a feature that improves recognition and description.
+        ### As such count (serialseq) i.e. : N18,2(N19),N20
+        ### Would use substr and index But be careful to previous presence of ()
+        $recievedlist .= "; $serialseq"
+          unless ( index( $recievedlist, $serialseq ) > 0 );
     }
     if ( $status == 4 ) {
-        $missinglist .= "; $serialseq" unless (index($missinglist,$serialseq)>0);
+        $missinglist .= "; $serialseq"
+          unless ( index( $missinglist, $serialseq ) > 0 );
     }
-    $query = qq|
-        UPDATE subscriptionhistory
-        SET    recievedlist=?, missinglist=?
-        WHERE  subscriptionid=?
-    |;
-    $sth = $dbh->prepare($query);
+
     $recievedlist =~ s/^; //;
     $missinglist  =~ s/^; //;
-    $sth->execute( $recievedlist, $missinglist, $subscriptionid );
+
+    $subscription_history->recievedlist($recievedlist);
+    $subscription_history->missinglist($missinglist);
+    $subscription_history->update();
+
     return $serialid;
 }
 
-- 
1.7.2.5