projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Transactions Part I!!!
[freeside.git]
/
htdocs
/
misc
/
cancel-unaudited.cgi
diff --git
a/htdocs/misc/cancel-unaudited.cgi
b/htdocs/misc/cancel-unaudited.cgi
index
78b7d31
..
319ac55
100755
(executable)
--- a/
htdocs/misc/cancel-unaudited.cgi
+++ b/
htdocs/misc/cancel-unaudited.cgi
@@
-1,6
+1,6
@@
#!/usr/bin/perl -Tw
#
#!/usr/bin/perl -Tw
#
-# $Id: cancel-unaudited.cgi,v 1.
6 1999-02-28 00:03:48
ivan Exp $
+# $Id: cancel-unaudited.cgi,v 1.
8 2001-04-09 23:05:16
ivan Exp $
#
# Usage: cancel-unaudited.cgi svcnum
# http://server.name/path/cancel-unaudited.cgi pkgnum
#
# Usage: cancel-unaudited.cgi svcnum
# http://server.name/path/cancel-unaudited.cgi pkgnum
@@
-16,7
+16,13
@@
# bmccane@maxbaud.net 98-apr-3
#
# $Log: cancel-unaudited.cgi,v $
# bmccane@maxbaud.net 98-apr-3
#
# $Log: cancel-unaudited.cgi,v $
-# Revision 1.6 1999-02-28 00:03:48 ivan
+# Revision 1.8 2001-04-09 23:05:16 ivan
+# Transactions Part I!!!
+#
+# Revision 1.7 2000/06/15 12:30:37 ivan
+# bugfix from Jeff Finucane, thanks!
+#
+# Revision 1.6 1999/02/28 00:03:48 ivan
# removed misleading comments
#
# Revision 1.5 1999/02/07 09:59:34 ivan
# removed misleading comments
#
# Revision 1.5 1999/02/07 09:59:34 ivan
@@
-34,7
+40,7
@@
#
use strict;
#
use strict;
-use vars qw( $cgi $query $svcnum $svc_acct $cust_svc $error );
+use vars qw( $cgi $query $svcnum $svc_acct $cust_svc $error
$dbh
);
use CGI;
use CGI::Carp qw(fatalsToBrowser);
use FS::UID qw(cgisuidsetup);
use CGI;
use CGI::Carp qw(fatalsToBrowser);
use FS::UID qw(cgisuidsetup);
@@
-44,7
+50,7
@@
use FS::cust_svc;
use FS::svc_acct;
$cgi = new CGI;
use FS::svc_acct;
$cgi = new CGI;
-&cgisuidsetup($cgi);
+
$dbh =
&cgisuidsetup($cgi);
#untaint svcnum
($query) = $cgi->keywords;
#untaint svcnum
($query) = $cgi->keywords;
@@
-58,7
+64,7
@@
$cust_svc = qsearchs('cust_svc',{'svcnum'=>$svcnum});
&eidiot(qq!This account has already been audited. Cancel the
<A HREF="!. popurl(2). qq!view/cust_pkg.cgi?! . $cust_svc->getfield('pkgnum') .
qq!pkgnum"> package</A> instead.!)
&eidiot(qq!This account has already been audited. Cancel the
<A HREF="!. popurl(2). qq!view/cust_pkg.cgi?! . $cust_svc->getfield('pkgnum') .
qq!pkgnum"> package</A> instead.!)
- if $cust_svc->
getfield('pkgnum') ne '
';
+ if $cust_svc->
pkgnum ne '' && $cust_svc->pkgnum ne '0
';
local $SIG{HUP} = 'IGNORE';
local $SIG{INT} = 'IGNORE';
local $SIG{HUP} = 'IGNORE';
local $SIG{INT} = 'IGNORE';
@@
-66,13
+72,22
@@
local $SIG{QUIT} = 'IGNORE';
local $SIG{TERM} = 'IGNORE';
local $SIG{TSTP} = 'IGNORE';
local $SIG{TERM} = 'IGNORE';
local $SIG{TSTP} = 'IGNORE';
+local $FS::UID::AutoCommit = 0;
+
$error = $svc_acct->cancel;
$error = $svc_acct->cancel;
-&eidiot($error) if $error;
+&
my
eidiot($error) if $error;
$error = $svc_acct->delete;
$error = $svc_acct->delete;
-&eidiot($error) if $error;
+&
my
eidiot($error) if $error;
$error = $cust_svc->delete;
$error = $cust_svc->delete;
-&eidiot($error) if $error;
+&myeidiot($error) if $error;
+
+$dbh->commit or die $dbh->errstr;
print $cgi->redirect(popurl(2));
print $cgi->redirect(popurl(2));
+sub myeidiot {
+ $dbh->rollback;
+ &eidiot(@_);
+}
+