all $cgi->header calls now include ( '-expires' => 'now' ) for mod_perl
[freeside.git] / htdocs / misc / print-invoice.cgi
1 #!/usr/bin/perl -Tw
2 #
3 # $Id: print-invoice.cgi,v 1.3 1998-12-23 03:04:24 ivan Exp $
4 #
5 # just a kludge for now, since this duplicates in a way it shouldn't stuff from
6 # Bill.pm (like $lpr) ivan@sisd.com 98-jun-16
7 #
8 # $Log: print-invoice.cgi,v $
9 # Revision 1.3  1998-12-23 03:04:24  ivan
10 # $cgi->keywords instead of $cgi->query_string
11 #
12 # Revision 1.2  1998/12/17 09:12:47  ivan
13 # s/CGI::(Request|Base)/CGI.pm/;
14 #
15
16 use strict;
17 use vars qw($conf);
18 use CGI;
19 use CGI::Carp qw(fatalsToBrowser);
20 use FS::UID qw(cgisuidsetup);
21 use FS::CGI qw(popurl);
22 use FS::Record qw(qsearchs);
23 use FS::cust_bill;
24
25 my($cgi) = new CGI;
26 &cgisuidsetup($cgi);
27
28 $conf = new FS::Conf;
29 my $lpr = $conf->config('lpr');
30
31 #untaint invnum
32 my($query) = $cgi->keywords;
33 $query =~ /^(\d*)$/;
34 my($invnum)=$1;
35 my($cust_bill)=qsearchs('cust_bill',{'invnum'=>$invnum});
36 die "Can't find invoice!\n" unless $cust_bill;
37
38         open(LPR,"|$lpr") or die "Can't open $lpr: $!";
39         print LPR $cust_bill->print_text; #( date )
40         close LPR
41           or die $! ? "Error closing $lpr: $!"
42                        : "Exit status $? from $lpr";
43
44 my($custnum)=$cust_bill->getfield('custnum');
45
46 print $cgi->redirect(popurl(2). "view/cust_main.cgi?$custnum#history");
47