optimize CDR rating after timed rate perf regression, RT#15739
[freeside.git] / httemplate / misc / void-cust_pay.cgi
index 4eec608..7b484e9 100755 (executable)
@@ -1,4 +1,9 @@
-<%
+%if ( $error ) {
+%  errorpage($error);
+%} else {
+<% $cgi->redirect($p. "view/cust_main.cgi?". $custnum) %>
+%}
+<%init>
 
 #untaint paynum
 my($query) = $cgi->keywords;
@@ -6,11 +11,16 @@ $query =~ /^(\d+)$/ || die "Illegal paynum";
 my $paynum = $1;
 
 my $cust_pay = qsearchs('cust_pay',{'paynum'=>$paynum});
+
+my $right = 'Regular void';
+$right = 'Credit card void' if $cust_pay->payby eq 'CARD';
+$right = 'Echeck void'      if $cust_pay->payby eq 'CHEK';
+
+die "access denied"
+  unless $FS::CurrentUser::CurrentUser->access_right($right);
+
 my $custnum = $cust_pay->custnum;
 
 my $error = $cust_pay->void;
-eidiot($error) if $error;
-
-print $cgi->redirect($p. "view/cust_main.cgi?". $custnum);
 
-%>
+</%init>