for mod_perl: no more top-level my() variables; use vars instead
[freeside.git] / htdocs / edit / process / cust_pay.cgi
1 #!/usr/bin/perl -Tw
2 #
3 # $Id: cust_pay.cgi,v 1.5 1999-01-19 05:13:53 ivan Exp $
4 #
5 # Usage: post form to:
6 #        http://server.name/path/cust_pay.cgi
7 #
8 # Note: Should be run setuid root as user nobody.
9 #
10 # ivan@voicenet.com 96-dec-11
11 #
12 # rewrite ivan@sisd.com 98-mar-16
13 #
14 # Changes to allow page to work at a relative position in server
15 #       bmccane@maxbaud.net     98-apr-3
16 #
17 # $Log: cust_pay.cgi,v $
18 # Revision 1.5  1999-01-19 05:13:53  ivan
19 # for mod_perl: no more top-level my() variables; use vars instead
20 # also the last s/create/new/;
21 #
22 # Revision 1.4  1999/01/18 22:47:54  ivan
23 # s/create/new/g; and use fields('table_name')
24 #
25 # Revision 1.3  1998/12/30 23:03:28  ivan
26 # bugfixes; fields isn't exported by derived classes
27 #
28 # Revision 1.2  1998/12/17 08:40:22  ivan
29 # s/CGI::Request/CGI.pm/; etc
30 #
31
32 use strict;
33 use vars qw( $cgi $invnum $new $error );
34 use CGI;
35 use CGI::Carp qw(fatalsToBrowser);
36 use FS::UID qw(cgisuidsetup);
37 use FS::CGI qw(idiot popurl);
38 use FS::Record qw(fields);
39 use FS::cust_pay;
40
41 $cgi = new CGI;
42 &cgisuidsetup($cgi);
43
44 $cgi->param('invnum') =~ /^(\d*)$/ or die "Illegal svcnum!";
45 $invnum = $1;
46
47 $new = new FS::cust_pay ( {
48   map {
49     $_, scalar($cgi->param($_));
50   #} qw(invnum paid _date payby payinfo paybatch)
51   } fields('cust_pay')
52 } );
53
54 $error=$new->insert;
55
56 if ($error) { #error!
57   idiot($error);
58 } else { #no errors!
59   print $cgi->redirect(popurl(3). "view/cust_bill.cgi?$invnum");
60 }
61