Fixing modaddauthor, and adding getitemtypes.
[koha_fer] / sec / writeoff.pl
index 960849e..75eb577 100755 (executable)
@@ -3,9 +3,27 @@
 #written 11/1/2000 by chris@katipo.co.nz
 #script to write off accounts
 
+
+# Copyright 2000-2002 Katipo Communications
+#
+# This file is part of Koha.
+#
+# Koha is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+#
+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+# A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along with
+# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+# Suite 330, Boston, MA  02111-1307 USA
+
 use strict;
 use CGI;
-use C4::Database;
+use C4::Context;
 use C4::Stats;
 my $input=new CGI;
 
@@ -45,30 +63,29 @@ print $input->redirect("/cgi-bin/koha/pay.pl?bornum=$bornum");
 sub writeoff{
   my ($bornum,$accountnum,$itemnum,$accounttype,$amount)=@_;
   my $user=$input->remote_user;
-  my $dbh=C4Connect;
+  $user=~ s/Levin/C/;
+  $user=~ s/Foxton/F/;
+  $user=~ s/Shannon/S/;
+  my $dbh = C4::Context->dbh;
   my $env;
-  my $query="Update accountlines set amountoutstanding=0 where ";
+  my $sth;
   if ($accounttype eq 'Res'){
-    $query.="accounttype='Res' and accountno='$accountnum' and borrowernumber='$bornum'";
+    $sth=$dbh->prepare("Update accountlines set amountoutstanding=0 where accounttype='Res' and accountno=? and borrowernumber=?");
+    $sth->execute($accountnum,$bornum);
   } else {
-    $query.="accounttype='$accounttype' and itemnumber='$itemnum' and borrowernumber='$bornum'";
+    $sth=$dbh->prepare("Update accountlines set amountoutstanding=0 where accounttype=? and itemnumber=? and borrowernumber=?");
+    $sth->execute($accounttype,$itemnum,$bornum);
   }
-  my $sth=$dbh->prepare($query);
-#  print $query;
-  $sth->execute;
   $sth->finish;
-  $query="select max(accountno) from accountlines";
-  $sth=$dbh->prepare($query);
+  $sth=$dbh->prepare("select max(accountno) from accountlines");
   $sth->execute;
   my $account=$sth->fetchrow_hashref;
   $sth->finish;
   $account->{'max(accountno)'}++;
-  $query="insert into accountlines (borrowernumber,accountno,itemnumber,date,amount,description,accounttype)
-  values ('$bornum','$account->{'max(accountno)'}','$itemnum',now(),'$amount','Writeoff','W')";
-  $sth=$dbh->prepare($query);
-  $sth->execute;
-  $sth->finish; 
+  $sth=$dbh->prepare("insert into accountlines (borrowernumber,accountno,itemnumber,date,amount,description,accounttype)
+  values (?,?,?,now(),?,'Writeoff','W')");
+  $sth->execute($bornum,$account->{'max(accountno)'},$itemnum,$amount);
+  $sth->finish;
 #  print $query;
-  $dbh->disconnect;
   UpdateStats($env,$user,'writeoff',$amount,'','','',$bornum);
 }