%if ( $error ) {
% $cgi->param('error', $error);
-<% $cgi->redirect(popurl(2). "void-cust_bill.cgi?". $cgi->query_string ) %>
+<% $cgi->redirect(popurl(2). "void-cust_bill.html?". $cgi->query_string ) %>
%} else {
<& /elements/header-popup.html, 'Invoice voided' &>
<SCRIPT TYPE="text/javascript">
+++ /dev/null
-<& /elements/header-popup.html, mt('Void invoice') &>
-
-<% include('/elements/error.html') %>
-
-<% emt('Are you sure you want to void this invoice?') %>
-<BR><BR>
-
-<% emt("Invoice #[_1] ([_2])",$cust_bill->display_invnum, $money_char. $cust_bill->owed) %>
-<BR><BR>
-
-<FORM METHOD="POST" ACTION="process/void-cust_bill.html">
-<INPUT TYPE="hidden" NAME="invnum" VALUE="<% $invnum %>">
-
-<% ntable("#cccccc", 2) %>
-<& /elements/tr-select-reason.html,
- 'field' => 'reasonnum',
- 'reason_class' => 'I',
- 'cgi' => $cgi
-&>
-
-</TABLE>
-
-<BR>
-<CENTER>
-<BUTTON TYPE="submit">Yes, void invoice</BUTTON> \
-<BUTTON TYPE="button" onClick="parent.cClick();">No, do not void invoice</BUTTON>
-</CENTER>
-
-</FORM>
-</BODY>
-</HTML>
-<%init>
-
-die "access denied"
- unless $FS::CurrentUser::CurrentUser->access_right('Void invoices');
-
-my $conf = new FS::Conf;
-my $money_char = $conf->config('money_char') || '$';
-
-#untaint invnum
-$cgi->param('invnum') =~ /^(\d+)$/ || die "Illegal invnum";
-my $invnum = $1;
-
-my $cust_bill = qsearchs('cust_bill',{'invnum'=>$invnum});
-
-</%init>
<INPUT TYPE="hidden" NAME="invnum" VALUE="<% $invnum %>">
<% ntable("#cccccc", 2) %>
-<TR>
- <TD ALIGN="right">Reason</TD>
- <TD><INPUT TYPE="text" NAME="reason" VALUE="<% scalar($cgi->param('reason')) |h %>"></TD>
-</TR>
+<& /elements/tr-select-reason.html,
+ 'field' => 'reasonnum',
+ 'reason_class' => 'I',
+ 'cgi' => $cgi
+&>
</TABLE>
+++ /dev/null
-%if ( $success ) {
-<& /elements/header-popup.html, mt("Credit voided") &>
- <SCRIPT TYPE="text/javascript">
- window.top.location.reload();
- </SCRIPT>
- </BODY>
-</HTML>
-%} else {
-<& /elements/header-popup.html, mt('Void credit') &>
-
-<& /elements/error.html &>
-
-<P ALIGN="center"><B><% mt('Void this credit?') |h %></B>
-
-<FORM action="<% ${p} %>misc/void-cust_credit.cgi">
-<INPUT TYPE="hidden" NAME="crednum" VALUE="<% $crednum %>">
-
-<TABLE BGCOLOR="#cccccc" BORDER="0" CELLSPACING="2" STYLE="margin-left:auto; margin-right:auto">
-<& /elements/tr-select-reason.html,
- 'field' => 'reasonnum',
- 'reason_class' => 'X',
- 'cgi' => $cgi
-&>
-</TABLE>
-
-<BR>
-<P ALIGN="CENTER">
-<INPUT TYPE="submit" NAME="confirm_void_credit" VALUE="<% mt('Void credit') |h %>">
-
-<INPUT TYPE="BUTTON" VALUE="<% mt("Don't void credit") |h %>" onClick="parent.cClick();">
-
-</FORM>
-</BODY>
-</HTML>
-
-%}
-<%init>
-
-die "access denied"
- unless $FS::CurrentUser::CurrentUser->access_right('Void credit');
-
-#untaint crednum
-my $crednum = $cgi->param('crednum');
-if ($crednum) {
- $crednum =~ /^(\d+)$/ || die "Illegal crednum";
-} else {
- my($query) = $cgi->keywords;
- $query =~ /^(\d+)/ || die "Illegal crednum";
- $crednum = $1;
-}
-
-my $cust_credit = qsearchs('cust_credit',{'crednum'=>$crednum}) || die "Credit not found";
-
-my $success = 0;
-if ($cgi->param('confirm_void_credit')) {
-
- #untaint reasonnum / create new reason
- my ($reasonnum, $error) = $m->comp('process/elements/reason');
- if (!$reasonnum) {
- $error = 'Reason required';
- } else {
- my $reason = qsearchs('reason', { 'reasonnum' => $reasonnum })
- || die "Reason num $reasonnum not found in database";
- $error = $cust_credit->void($reason) unless $error;
- }
-
- if ($error) {
- $cgi->param('error',$error);
- } else {
- $success = 1;
- }
-}
-
-</%init>
--- /dev/null
+%if ( $success ) {
+<& /elements/header-popup.html, mt("Credit voided") &>
+ <SCRIPT TYPE="text/javascript">
+ window.top.location.reload();
+ </SCRIPT>
+ </BODY>
+</HTML>
+%} else {
+<& /elements/header-popup.html, mt('Void credit') &>
+
+<& /elements/error.html &>
+
+<P ALIGN="center"><B><% mt('Void this credit?') |h %></B>
+
+<FORM action="<% ${p} %>misc/void-cust_credit.html">
+<INPUT TYPE="hidden" NAME="crednum" VALUE="<% $crednum %>">
+
+<TABLE BGCOLOR="#cccccc" BORDER="0" CELLSPACING="2" STYLE="margin-left:auto; margin-right:auto">
+<& /elements/tr-select-reason.html,
+ 'field' => 'reasonnum',
+ 'reason_class' => 'X',
+ 'cgi' => $cgi
+&>
+</TABLE>
+
+<BR>
+<P ALIGN="CENTER">
+<INPUT TYPE="submit" NAME="confirm_void_credit" VALUE="<% mt('Void credit') |h %>">
+
+<INPUT TYPE="BUTTON" VALUE="<% mt("Don't void credit") |h %>" onClick="parent.cClick();">
+
+</FORM>
+</BODY>
+</HTML>
+
+%}
+<%init>
+
+die "access denied"
+ unless $FS::CurrentUser::CurrentUser->access_right('Void credit');
+
+#untaint crednum
+my $crednum = $cgi->param('crednum');
+if ($crednum) {
+ $crednum =~ /^(\d+)$/ || die "Illegal crednum";
+} else {
+ my($query) = $cgi->keywords;
+ $query =~ /^(\d+)/ || die "Illegal crednum";
+ $crednum = $1;
+}
+
+my $cust_credit = qsearchs('cust_credit',{'crednum'=>$crednum}) || die "Credit not found";
+
+my $success = 0;
+if ($cgi->param('confirm_void_credit')) {
+
+ #untaint reasonnum / create new reason
+ my ($reasonnum, $error) = $m->comp('process/elements/reason');
+ if (!$reasonnum) {
+ $error = 'Reason required';
+ } else {
+ my $reason = qsearchs('reason', { 'reasonnum' => $reasonnum })
+ || die "Reason num $reasonnum not found in database";
+ $error = $cust_credit->void($reason) unless $error;
+ }
+
+ if ($error) {
+ $cgi->param('error',$error);
+ } else {
+ $success = 1;
+ }
+}
+
+</%init>
+++ /dev/null
-%if ( $success ) {
-<& /elements/header-popup.html, mt("Payment voided") &>
- <SCRIPT TYPE="text/javascript">
- window.top.location.reload();
- </SCRIPT>
- </BODY>
-</HTML>
-%} else {
-<& /elements/header-popup.html, mt('Void payment') &>
-
-<& /elements/error.html &>
-
-<P ALIGN="center"><B><% mt('Void this payment?') |h %></B>
-
-<FORM action="<% ${p} %>misc/void-cust_pay.cgi">
-<INPUT TYPE="hidden" NAME="paynum" VALUE="<% $paynum %>">
-
-<TABLE BGCOLOR="#cccccc" BORDER="0" CELLSPACING="2" STYLE="margin-left:auto; margin-right:auto">
-<& /elements/tr-select-reason.html,
- 'field' => 'reasonnum',
- 'reason_class' => 'P',
- 'cgi' => $cgi
-&>
-</TABLE>
-
-<BR>
-<P ALIGN="CENTER">
-<INPUT TYPE="submit" NAME="confirm_void_payment" VALUE="<% mt('Void payment') |h %>">
-
-<INPUT TYPE="BUTTON" VALUE="<% mt("Don't void payment") |h %>" onClick="parent.cClick();">
-
-</FORM>
-</BODY>
-</HTML>
-
-%}
-<%init>
-
-#untaint paynum
-my $paynum = $cgi->param('paynum');
-if ($paynum) {
- $paynum =~ /^(\d+)$/ || die "Illegal paynum";
-} else {
- my($query) = $cgi->keywords;
- $query =~ /^(\d+)/ || die "Illegal paynum";
- $paynum = $1;
-}
-
-my $cust_pay = qsearchs('cust_pay',{'paynum'=>$paynum}) || die "Payment not found";
-
-my $right = 'Void payments';
-$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 $success = 0;
-if ($cgi->param('confirm_void_payment')) {
-
- #untaint reasonnum / create new reason
- my ($reasonnum, $error) = $m->comp('process/elements/reason');
- if (!$reasonnum) {
- $error = 'Reason required';
- } else {
- my $reason = qsearchs('reason', { 'reasonnum' => $reasonnum })
- || die "Reason num $reasonnum not found in database";
- $error = $cust_pay->void($reason) unless $error;
- }
-
- if ($error) {
- $cgi->param('error',$error);
- } else {
- $success = 1;
- }
-}
-
-</%init>
--- /dev/null
+%if ( $success ) {
+<& /elements/header-popup.html, mt("Payment voided") &>
+ <SCRIPT TYPE="text/javascript">
+ window.top.location.reload();
+ </SCRIPT>
+ </BODY>
+</HTML>
+%} else {
+<& /elements/header-popup.html, mt('Void payment') &>
+
+<& /elements/error.html &>
+
+<P ALIGN="center"><B><% mt('Void this payment?') |h %></B>
+
+<FORM action="<% ${p} %>misc/void-cust_pay.html">
+<INPUT TYPE="hidden" NAME="paynum" VALUE="<% $paynum %>">
+
+<TABLE BGCOLOR="#cccccc" BORDER="0" CELLSPACING="2" STYLE="margin-left:auto; margin-right:auto">
+<& /elements/tr-select-reason.html,
+ 'field' => 'reasonnum',
+ 'reason_class' => 'P',
+ 'cgi' => $cgi
+&>
+</TABLE>
+
+<BR>
+<P ALIGN="CENTER">
+<INPUT TYPE="submit" NAME="confirm_void_payment" VALUE="<% mt('Void payment') |h %>">
+
+<INPUT TYPE="BUTTON" VALUE="<% mt("Don't void payment") |h %>" onClick="parent.cClick();">
+
+</FORM>
+</BODY>
+</HTML>
+
+%}
+<%init>
+
+#untaint paynum
+my $paynum = $cgi->param('paynum');
+if ($paynum) {
+ $paynum =~ /^(\d+)$/ || die "Illegal paynum";
+} else {
+ my($query) = $cgi->keywords;
+ $query =~ /^(\d+)/ || die "Illegal paynum";
+ $paynum = $1;
+}
+
+my $cust_pay = qsearchs('cust_pay',{'paynum'=>$paynum}) || die "Payment not found";
+
+my $right = 'Void payments';
+$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 $success = 0;
+if ($cgi->param('confirm_void_payment')) {
+
+ #untaint reasonnum / create new reason
+ my ($reasonnum, $error) = $m->comp('process/elements/reason');
+ if (!$reasonnum) {
+ $error = 'Reason required';
+ } else {
+ my $reason = qsearchs('reason', { 'reasonnum' => $reasonnum })
+ || die "Reason num $reasonnum not found in database";
+ $error = $cust_pay->void($reason) unless $error;
+ }
+
+ if ($error) {
+ $cgi->param('error',$error);
+ } else {
+ $success = 1;
+ }
+}
+
+</%init>
<& /elements/popup_link.html,
'label' => emt('Void this invoice'),
'actionlabel' => emt('Void this invoice'),
- 'action' => $p.'misc/void-cust_bill.cgi?invnum='.$invnum,
+ 'action' => $p.'misc/void-cust_bill.html?invnum='.$invnum,
&>
% }
% if ( $can_void and $can_delete ) {
$void = ' ('.
include( '/elements/popup_link.html',
'label' => emt('void'),
- 'action' => "${p}misc/void-cust_credit.cgi?".
+ 'action' => "${p}misc/void-cust_credit.html?".
$cust_credit->crednum,
'actionlabel' => emt('Void credit'),
).
$void =
' ('. include('/elements/popup_link.html',
'label' => emt('void'),
- 'action' => "${p}misc/void-cust_bill.cgi?;invnum=".
+ 'action' => "${p}misc/void-cust_bill.html?;invnum=".
$cust_bill->invnum,
'actionlabel' => emt('Void Invoice'),
).
$void = ' ('.
include( '/elements/popup_link.html',
'label' => emt('void'),
- 'action' => "${p}misc/void-cust_pay.cgi?".$cust_pay->paynum,
+ 'action' => "${p}misc/void-cust_pay.html?".$cust_pay->paynum,
'actionlabel' => emt('Void payment'),
).
')'