initial checkin of module files for proper perl installation
[freeside.git] / htdocs / misc / bill.cgi
1 #!/usr/bin/perl -Tw
2 #
3 # $Id: bill.cgi,v 1.4 1999-01-19 05:14:02 ivan Exp $
4 #
5 # s/FS:Search/FS::Record/ and cgisuidsetup($cgi) ivan@sisd.com 98-mar-13
6 #
7 # Changes to allow page to work at a relative position in server
8 #       bmccane@maxbaud.net     98-apr-3
9 #
10 # $Log: bill.cgi,v $
11 # Revision 1.4  1999-01-19 05:14:02  ivan
12 # for mod_perl: no more top-level my() variables; use vars instead
13 # also the last s/create/new/;
14 #
15 # Revision 1.3  1998/12/23 03:01:13  ivan
16 # $cgi->keywords instead of $cgi->query_string
17 #
18 # Revision 1.2  1998/12/17 09:12:41  ivan
19 # s/CGI::(Request|Base)/CGI.pm/;
20 #
21
22 use strict;
23 use vars qw( $cgi $query $custnum $cust_main $error );
24 use CGI;
25 use CGI::Carp qw(fatalsToBrowser);
26 use FS::UID qw(cgisuidsetup);
27 use FS::CGI qw(popurl eidiot);
28 use FS::Record qw(qsearchs);
29 use FS::cust_main;
30
31 $cgi = new CGI;
32 &cgisuidsetup($cgi);
33
34 #untaint custnum
35 ($query) = $cgi->keywords;
36 $query =~ /^(\d*)$/;
37 $custnum = $1;
38 $cust_main = qsearchs('cust_main',{'custnum'=>$custnum});
39 die "Can't find customer!\n" unless $cust_main;
40
41 $error = $cust_main->bill(
42 #                          'time'=>$time
43                          );
44 &eidiot($error) if $error;
45
46 $error = $cust_main->collect(
47 #                             'invoice-time'=>$time,
48 #                             'batch_card'=> 'yes',
49                              'batch_card'=> 'no',
50                              'report_badcard'=> 'yes',
51                             );
52 &eidiot($error) if $error;
53
54 print $cgi->redirect(popurl(2). "view/cust_main.cgi?$custnum#history");
55