initial checkin of module files for proper perl installation
[freeside.git] / htdocs / edit / cust_credit.cgi
1 #!/usr/bin/perl -Tw
2 #
3 # $Id: cust_credit.cgi,v 1.7 1999-02-28 00:03:33 ivan Exp $
4 #
5 # Usage: cust_credit.cgi custnum [ -paybatch ]
6 #        http://server.name/path/cust_credit?custnum [ -paybatch ]
7 #
8 # some hooks in here for modifications as well as additions, but needs (lots) more work.
9 # also see process/cust_credit.cgi, the script that processes the form.
10 #
11 # ivan@voicenet.com 96-dec-05
12 #
13 # paybatch field, differentiates between credits & credits+refunds by commandline
14 # ivan@voicenet.com 96-dec-08
15 #
16 # added (but commented out) sprintf("%.2f" in amount field.  Hmm.
17 # ivan@voicenet.com 97-jan-3
18 #
19 # paybatch stuff thrown out - has checkbox now instead.  
20 # (well, sort of.  still passed around for backward compatability and possible editing hook)
21 # ivan@voicenet.com 97-apr-21
22 #
23 # rewrite ivan@sisd.com 98-mar-16
24 #
25 # $Log: cust_credit.cgi,v $
26 # Revision 1.7  1999-02-28 00:03:33  ivan
27 # removed misleading comments
28 #
29 # Revision 1.6  1999/01/25 12:09:52  ivan
30 # yet more mod_perl stuff
31 #
32 # Revision 1.5  1999/01/19 05:13:33  ivan
33 # for mod_perl: no more top-level my() variables; use vars instead
34 # also the last s/create/new/;
35 #
36 # Revision 1.4  1999/01/18 09:41:23  ivan
37 # all $cgi->header calls now include ( '-expires' => 'now' ) for mod_perl
38 # (good idea anyway)
39 #
40 # Revision 1.3  1998/12/23 02:26:06  ivan
41 # *** empty log message ***
42 #
43 # Revision 1.2  1998/12/17 06:16:59  ivan
44 # fix double // in relative URLs, s/CGI::Base/CGI/;
45 #
46
47 use strict;
48 use vars qw( $cgi $query $custnum $otaker $p1 $crednum $_date $amount $reason );
49 use Date::Format;
50 use CGI;
51 use CGI::Carp qw(fatalsToBrowser);
52 use FS::UID qw(cgisuidsetup getotaker);
53 use FS::CGI qw(header popurl);
54 use FS::Record qw(fields);
55 #use FS::cust_credit;
56
57 $cgi = new CGI;
58 cgisuidsetup($cgi);
59
60 if ( $cgi->param('error') ) {
61   #$cust_credit = new FS::cust_credit ( {
62   #  map { $_, scalar($cgi->param($_)) } fields('cust_credit')
63   #} );
64   $custnum = $cgi->param('custnum');
65   $amount = $cgi->param('amount');
66   #$refund = $cgi->param('refund');
67   $reason = $cgi->param('reason');
68 } else {
69   ($query) = $cgi->keywords;
70   $query =~ /^(\d+)$/;
71   $custnum = $1;
72   $amount = '';
73   #$refund = 'yes';
74   $reason = '';
75 }
76 $_date = time;
77
78 $otaker = getotaker;
79
80 $p1 = popurl(1);
81
82 print $cgi->header( '-expires' => 'now' ), header("Post Credit", '');
83 print qq!<FONT SIZE="+1" COLOR="#ff0000">Error: !, $cgi->param('error'),
84       "</FONT>"
85   if $cgi->param('error');
86 print <<END;
87     <FORM ACTION="${p1}process/cust_credit.cgi" METHOD=POST>
88     <PRE>
89 END
90
91 $crednum = "";
92 print qq!Credit #<B>!, $crednum ? $crednum : " <I>(NEW)</I>", qq!</B><INPUT TYPE="hidden" NAME="crednum" VALUE="$crednum">!;
93
94 print qq!\nCustomer #<B>$custnum</B><INPUT TYPE="hidden" NAME="custnum" VALUE="$custnum">!;
95
96 print qq!<INPUT TYPE="hidden" NAME="paybatch" VALUE="">!;
97
98 print qq!\nDate: <B>!, time2str("%D",$_date), qq!</B><INPUT TYPE="hidden" NAME="_date" VALUE="">!;
99
100 print qq!\nAmount \$<INPUT TYPE="text" NAME="amount" VALUE="$amount" SIZE=8 MAXLENGTH=8>!;
101 print qq!<INPUT TYPE="hidden" NAME="credited" VALUE="">!;
102
103 #print qq! <INPUT TYPE="checkbox" NAME="refund" VALUE="$refund">Also post refund!;
104
105 print qq!<INPUT TYPE="hidden" NAME="otaker" VALUE="$otaker">!;
106
107 print qq!\nReason <INPUT TYPE="text" NAME="reason" VALUE="$reason" SIZE=72>!;
108
109 print <<END;
110 </PRE>
111 <BR>
112 <CENTER><INPUT TYPE="submit" VALUE="Post"></CENTER>
113 END
114
115 print <<END;
116
117     </FORM>
118   </BODY>
119 </HTML>
120 END
121