s/create/new/g; and use fields('table_name')
[freeside.git] / htdocs / edit / process / cust_pay.cgi
1 #!/usr/bin/perl -Tw
2 #
3 # $Id: cust_pay.cgi,v 1.4 1999-01-18 22:47:54 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.4  1999-01-18 22:47:54  ivan
19 # s/create/new/g; and use fields('table_name')
20 #
21 # Revision 1.3  1998/12/30 23:03:28  ivan
22 # bugfixes; fields isn't exported by derived classes
23 #
24 # Revision 1.2  1998/12/17 08:40:22  ivan
25 # s/CGI::Request/CGI.pm/; etc
26 #
27
28 use strict;
29 use CGI;
30 use CGI::Carp qw(fatalsToBrowser);
31 use FS::UID qw(cgisuidsetup);
32 use FS::CGI qw(idiot popurl);
33 use FS::Record qw(fields);
34 use FS::cust_pay;
35
36 my($cgi)=new CGI;
37 &cgisuidsetup($cgi);
38
39 $cgi->param('invnum') =~ /^(\d*)$/ or die "Illegal svcnum!";
40 my($invnum)=$1;
41
42 my($new) = new FS::cust_pay ( {
43   map {
44     $_, scalar($cgi->param($_));
45   #} qw(invnum paid _date payby payinfo paybatch)
46   } fields('cust_pay')
47 } );
48
49 my($error);
50 $error=$new->insert;
51
52 if ($error) { #error!
53   idiot($error);
54 } else { #no errors!
55   print $cgi->redirect(popurl(3). "view/cust_bill.cgi?$invnum");
56 }
57