all $cgi->header calls now include ( '-expires' => 'now' ) for mod_perl
[freeside.git] / htdocs / misc / unsusp_pkg.cgi
1 #!/usr/bin/perl -Tw
2 #
3 # $Id: unsusp_pkg.cgi,v 1.3 1998-12-23 03:05:25 ivan Exp $
4 #
5 # Usage: susp_pkg.cgi pkgnum
6 #        http://server.name/path/susp_pkg.cgi pkgnum
7 #
8 # Note: Should be run setuid freeside as user nobody
9 #
10 # probably should generalize this to do cancels, suspensions, unsuspensions, etc.
11 #
12 # ivan@voicenet.com 97-feb-27
13 #
14 # now redirects to enter comments
15 # ivan@voicenet.com 97-may-8
16 #
17 # rewrote for new API
18 # ivan@voicenet.com 97-jul-21
19 #
20 # FS::Search -> FS::Record ivan@sisd.com 98-mar-17
21 #
22 # Changes to allow page to work at a relative position in server
23 #       bmccane@maxbaud.net     98-apr-3
24 #
25 # $Log: unsusp_pkg.cgi,v $
26 # Revision 1.3  1998-12-23 03:05:25  ivan
27 # $cgi->keywords instead of $cgi->query_string
28 #
29 # Revision 1.2  1998/12/17 09:12:49  ivan
30 # s/CGI::(Request|Base)/CGI.pm/;
31 #
32
33 use strict;
34 use CGI;
35 use CGI::Carp qw(fatalsToBrowser);
36 use FS::UID qw(cgisuidsetup);
37 use FS::CGI qw(popurl eidiot);
38 use FS::Record qw(qsearchs);
39 use FS::cust_pkg;
40
41 my($cgi) = new CGI;
42 &cgisuidsetup($cgi);
43  
44 #untaint pkgnum
45 my($query) = $cgi->keywords;
46 $query =~ /^(\d+)$/ || die "Illegal pkgnum";
47 my($pkgnum)=$1;
48
49 my($cust_pkg) = qsearchs('cust_pkg',{'pkgnum'=>$pkgnum});
50
51 my($error)=$cust_pkg->unsuspend;
52 &eidiot($error) if $error;
53
54 print $cgi->redirect(popurl(2). "view/cust_main.cgi?".$cust_pkg->getfield('custnum'));
55