-<% $pre %>Payment<% $post %> by <% $otaker %>
+<% $payment %>
<% "$info$desc$view$apply$refund$void$delete$unapply" %>
<%init>
my $date_format = $opt{'date_format'} || '%m/%d/%Y';
my $conf = new FS::Conf;
+my $money_char = $conf->config('money_char') || '$';
my $curuser = $FS::CurrentUser::CurrentUser;
-my $payby = $cust_pay->payby;
-
-my $payinfo;
-if ( $payby eq 'CARD' ) {
- $payinfo = $cust_pay->paymask;
-} elsif ( $payby eq 'CHEK' ) {
- my( $account, $aba ) = split('@', $cust_pay->paymask );
- $payinfo = "ABA $aba, Acct #$account";
-} else {
- $payinfo = $cust_pay->payinfo;
-}
my @cust_bill_pay = $cust_pay->cust_bill_pay;
my @cust_pay_refund = $cust_pay->cust_pay_refund;
+my ($payby,$payinfo) = translate_payinfo($cust_pay);
my $target = "$payby$payinfo";
-$payby =~ s/^BILL$/Check #/ if $payinfo;
-$payby =~ s/^CHEK$/Electronic check /;
-$payby =~ s/^PREP$/Prepaid card /;
-$payby =~ s/^CARD$/Credit card #/;
-$payby =~ s/^COMP$/Complimentary by /;
-$payby =~ s/^CASH$/Cash/;
-$payby =~ s/^WEST$/Western Union/;
-$payby =~ s/^MCRD$/Manual credit card/;
-$payby =~ s/^BILL$//;
+$payby = translate_payby($payby,$payinfo);
my $info = $payby ? "($payby$payinfo)" : '';
my $desc = '';
%cust_bill_pay_height = ('height' => 436);
}
-my( $pre, $post, $apply, $ext ) = ( '', '', '', '' );
+my $apply = '';
+
+my $italicize_otaker = 0;
+my $otaker = $cust_pay->otaker;
+if ( $otaker eq 'fs_daily' ) {
+ $otaker = 'auto billing';
+ $italicize_otaker = 1;
+}
+if ( $otaker eq 'fs_selfservice' ) {
+ $otaker = 'customer self-service';
+ $italicize_otaker = 1;
+}
+
+my $payment = emt("Payment by [_1]",$otaker);
+$payment =~ s/$otaker/<i>$otaker<\/i>/ if $italicize_otaker;
+
if ( scalar(@cust_bill_pay) == 0
&& scalar(@cust_pay_refund) == 0 ) {
#completely unapplied
- $pre = '<B><FONT COLOR="#FF0000">Unapplied ';
- $post = '</FONT></B>';
+ $payment = emt("Unapplied Payment by [_1]",$otaker);
+ $payment =~ s/$otaker/<i>$otaker<\/i>/ if $italicize_otaker;
+ $payment = '<B><FONT COLOR="#FF0000">'.$payment.'</FONT></B>';
if ( $curuser->access_right('Apply payment') ) {
if ( $cust_pay->cust_main->total_owed > 0 ) {
$apply = ' ('.
include( '/elements/popup_link.html',
- 'label' => 'apply',
+ 'label' => emt('apply'),
'action' => "${p}edit/cust_bill_pay.cgi?".
$cust_pay->paynum,
- 'actionlabel' => 'Apply payment',
+ 'actionlabel' => emt('Apply payment'),
%cust_bill_pay_width,
%cust_bill_pay_height,
).
if ( $cust_pay->cust_main->total_unapplied_refunds > 0 ) {
$apply.= ' ('.
include( '/elements/popup_link.html',
- 'label' => 'apply to refund',
+ 'label' => emt('apply to refund'),
'action' => "${p}edit/cust_pay_refund.cgi?".
$cust_pay->paynum,
- 'actionlabel' => 'Apply payment to refund',
+ 'actionlabel' => emt('Apply payment to refund'),
'width' => 392,
- #default# 'height' => 336,
).
')';
}
&& scalar(@cust_pay_refund) == 1
&& $cust_pay->unapplied == 0 ) {
#applied to one refund
- $desc .= ' refunded on '. time2str($date_format, $cust_pay_refund[0]->_date);
+ $desc .= emt(" refunded on [_1]", time2str($date_format, $cust_pay_refund[0]->_date) );
} else {
#complicated
$desc .= '<BR>';
foreach my $app ( sort { $a->_date <=> $b->_date }
( @cust_bill_pay, @cust_pay_refund ) ) {
if ( $app->isa('FS::cust_bill_pay') ) {
- $desc .= ' '.
- '$'. $app->amount.
- ' '. $app->applied_to_invoice.
- '<BR>';
- #' on '. time2str($date_format, $cust_bill_pay->_date).
+ $desc .= ' ' . $money_char . $app->amount . ' ' .
+ $app->applied_to_invoice . '<BR>';
} elsif ( $app->isa('FS::cust_pay_refund') ) {
- $desc .= ' '.
- '$'. $app->amount.
- ' refunded on '. time2str($date_format, $app->_date).
- '<BR>';
+ $desc .= ' ' .
+ emt("[_1][_2] refunded on [_3]", $money_char, $app->amount,
+ time2str($date_format, $app->_date) ) . '<BR>';
} else {
die "$app is not a FS::cust_bill_pay or FS::cust_pay_refund";
}
}
if ( $cust_pay->unapplied > 0 ) {
$desc .= ' '.
- '<B><FONT COLOR="#FF0000">$'.
- $cust_pay->unapplied. ' unapplied</FONT></B>';
+ '<B><FONT COLOR="#FF0000">' .
+ emt("[_1][_2] unapplied", $money_char, $cust_pay->unapplied) .
+ '</FONT></B>';
if ( $curuser->access_right('Apply payment') ) {
if ( $cust_pay->cust_main->total_owed > 0 ) {
$apply = ' ('.
include( '/elements/popup_link.html',
- 'label' => 'apply',
+ 'label' => emt('apply'),
'action' => "${p}edit/cust_bill_pay.cgi?".
$cust_pay->paynum,
- 'actionlabel' => 'Apply payment',
+ 'actionlabel' => emt('Apply payment'),
%cust_bill_pay_width,
%cust_bill_pay_height,
).
if ( $cust_pay->cust_main->total_unapplied_refunds > 0 ) {
$apply.= ' ('.
include( '/elements/popup_link.html',
- 'label' => 'apply to refund',
+ 'label' => emt('apply to refund'),
'action' => "${p}edit/cust_pay_refund.cgi?".
$cust_pay->paynum,
- 'actionlabel' => 'Apply payment to refund',
+ 'actionlabel' => emt('Apply payment to refund'),
'width' => 392,
- #default# 'height' => 336,
).
')';
}
my $view =
' ('. include('/elements/popup_link.html',
- 'label' => 'view receipt',
+ 'label' => emt('view receipt'),
'action' => "${p}view/cust_pay.html?link=popup;paynum=".
$cust_pay->paynum,
- 'actionlabel' => 'Payment Receipt',
+ 'actionlabel' => emt('Payment Receipt'),
).
')';
) {
$refund = qq! (<A HREF="${p}edit/cust_refund.cgi?payby=$1;!.
qq!paynum=!. $cust_pay->paynum. '"'.
- qq! TITLE="Send a refund for this payment to the payment gateway"!.
- qq!>refund</A>)!;
+ qq! TITLE="! .emt('Send a refund for this payment to the payment gateway')
+ . '">' . emt('refund') . '</A>)';
}
my $void = '';
-if ( $cust_pay->closed !~ /^Y/i
+my $voidmsg = $cust_pay->payby =~ /^(CARD|CHEK)$/
+ ? ' (' . emt('do not send anything to the payment gateway').')'
+ : '';
+$void = areyousure_link("${p}misc/void-cust_pay.cgi?".$cust_pay->paynum,
+ emt('Are you sure you want to void this payment?'),
+ emt('Void this payment from the database') . $voidmsg,
+ emt('void')
+ )
+ if ( $cust_pay->closed !~ /^Y/i
&& ( ( $cust_pay->payby eq 'CARD'
&& $curuser->access_right('Credit card void')
)
&& $curuser->access_right('Regular void')
)
)
- )
-{
- $void = qq! (<A HREF="javascript:areyousure('!.
- qq!${p}misc/void-cust_pay.cgi?!. $cust_pay->paynum.
- qq!', 'Are you sure you want to void this payment?')"!.
- qq! TITLE="Void this payment from the database!.
- ( $cust_pay->payby =~ /^(CARD|CHEK)$/
- ? ' (do not send anything to the payment gateway)'
- : ''
- ). '"'.
- qq!>void</A>)!;
-}
+ );
my $delete = '';
-if ( $cust_pay->closed !~ /^Y/i
- && $opt{'deletepayments'}
- && $curuser->access_right('Delete payment')
- )
-{
- $delete = qq! (<A HREF="javascript:areyousure('!.
- qq!${p}misc/delete-cust_pay.cgi?!. $cust_pay->paynum.
- qq!', 'Are you sure you want to delete this payment?')"!.
- qq! TITLE="Delete this payment from the database completely - not recommended"!.
- qq!>delete</A>)!;
-}
+$delete = areyousure_link("${p}misc/delete-cust_pay.cgi?".$cust_pay->paynum,
+ emt('Are you sure you want to delete this payment?'),
+ emt('Delete this payment from the database completely - not recommended'),
+ emt('delete')
+ )
+ if ( $cust_pay->closed !~ /^Y/i && $opt{'deletepayments'}
+ && $curuser->access_right('Delete payment') );
my $unapply = '';
-if ( $cust_pay->closed !~ /^Y/i
- && scalar(@cust_bill_pay)
- && $curuser->access_right('Unapply payment')
- )
-{
- $unapply = qq! (<A HREF="javascript:areyousure('!.
- qq!${p}misc/unapply-cust_pay.cgi?!. $cust_pay->paynum.
- qq!', 'Are you sure you want to unapply this payment?')"!.
- qq! TITLE="Keep this payment, but dissociate it from the invoices it is currently applied against"!.
- qq!>unapply</A>)!;
-}
-
-my $otaker = $cust_pay->otaker;
-$otaker = '<i>auto billing</i>' if $otaker eq 'fs_daily';
-$otaker = '<i>customer self-service</i>' if $otaker eq 'fs_selfservice';
+$unapply = areyousure_link("${p}misc/unapply-cust_pay.cgi?".$cust_pay->paynum,
+ emt('Are you sure you want to unapply this payment?'),
+ emt('Keep this payment, but dissociate it from the invoices it is currently applied against'),
+ emt('unapply')
+ )
+ if ( $cust_pay->closed !~ /^Y/i && scalar(@cust_bill_pay)
+ && $curuser->access_right('Unapply payment') );
</%init>