templating deletemember impossible when issues/debts/guarantees
[wip/koha-chris_n.git] / members / deletemem.pl
1 #!/usr/bin/perl
2
3 # $Id$
4
5 #script to delete items
6 #written 2/5/00
7 #by chris@katipo.co.nz
8
9
10 # Copyright 2000-2002 Katipo Communications
11 #
12 # This file is part of Koha.
13 #
14 # Koha is free software; you can redistribute it and/or modify it under the
15 # terms of the GNU General Public License as published by the Free Software
16 # Foundation; either version 2 of the License, or (at your option) any later
17 # version.
18 #
19 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
20 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
21 # A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
22 #
23 # You should have received a copy of the GNU General Public License along with
24 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
25 # Suite 330, Boston, MA  02111-1307 USA
26
27 use strict;
28
29 use CGI;
30 use C4::Context;
31 use C4::Search;
32 use C4::Interface::CGI::Output;
33 use C4::Output;
34 use C4::Circulation::Circ2;
35 use C4::Auth;
36
37
38 my $input = new CGI;
39
40 my $flagsrequired;
41 $flagsrequired->{borrower}=1;
42 my ($loggedinuser, $cookie, $sessionID) = checkauth($input, 0, $flagsrequired);
43
44
45
46 #print $input->header;
47 my $member=$input->param('member');
48 my %env;
49 $env{'nottodayissues'}=1;
50 my %member2;
51 $member2{'borrowernumber'}=$member;
52 my $issues=currentissues(\%env,\%member2);
53 my $i=0;
54 foreach (sort keys %$issues) {
55         $i++;
56 }
57 my ($bor,$flags)=getpatroninformation(\%env, $member,'');
58 my $dbh = C4::Context->dbh;
59 my $sth=$dbh->prepare("Select * from borrowers where guarantor=?");
60 $sth->execute($member);
61 my $data=$sth->fetchrow_hashref;
62 $sth->finish;
63
64
65 if ($i > 0 || $flags->{'CHARGES'} ne '' || $data ne ''){
66         my ($template, $borrowernumber, $cookie)
67                 = get_template_and_user({template_name => "members/deletemem.tmpl",
68                                         query => $input,
69                                         type => "intranet",
70                                         authnotrequired => 0,
71                                         flagsrequired => {circulate => 1},
72                                         debug => 1,
73                                         });
74         #   print $input->header;
75         if ($i >0) {
76                 $template->param(ItemsOnIssues => $i);
77         }
78         if ($flags->{'CHARGES'} ne '') {
79                 $template->param(charges => $flags->{'CHARGES'}->{'message'});
80         }
81         if ($data ne '') {
82                 $template->param(guarantees => 1);
83         }
84 #       print "<table border=1>";
85 #       if ($i > 0){
86 #               print "<TR><TD>Items on Issue</td><td align=right>$i</td></tr>";
87 #       }
88 #       if ($flags->{'CHARGES'} ne ''){
89 #               print "<TR><TD>Charges</td><td>$flags->{'CHARGES'}->{'message'}</tr>";
90 #       }
91 #       if ($data ne ''){
92 #               print "<TR><TD>Guarantees</td></tr>";
93 #       }
94 #       print "</table>";
95 output_html_with_http_headers $input, $cookie, $template->output;
96
97 } else {
98         delmember($member);
99         print $input->redirect("/cgi-bin/koha/members/members-home.pl");
100 }
101
102 sub delmember{
103         my ($member)=@_;
104         my $dbh = C4::Context->dbh;
105         my $sth=$dbh->prepare("Select * from borrowers where borrowernumber=?");
106         $sth->execute($member);
107         my @data=$sth->fetchrow_array;
108         $sth->finish;
109         $sth=$dbh->prepare("Insert into deletedborrowers values (".("?,"x(scalar(@data)-1))."?)");
110         $sth->execute(@data);
111         $sth->finish;
112         $sth=$dbh->prepare("Delete from borrowers where borrowernumber=?");
113         $sth->execute($member);
114         $sth->finish;
115         $sth=$dbh->prepare("Delete from reserves where borrowernumber=?");
116         $sth->execute($member);
117         $sth->finish;
118 }