X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fview%2Fcust_main%2Fpayment_history%2Fpayment.html;h=eeddc47b14ccb68cf27c09c6a1f4d3a2b402831c;hb=6f08493827f30fe18fd99c32bbb1625b064017ec;hp=bf88a6607cf948b19d2aa315be0ad8a54836881e;hpb=0f3dc497f9050e317bcde16eae7cefd2d4ad696f;p=freeside.git diff --git a/httemplate/view/cust_main/payment_history/payment.html b/httemplate/view/cust_main/payment_history/payment.html index bf88a6607..eeddc47b1 100644 --- a/httemplate/view/cust_main/payment_history/payment.html +++ b/httemplate/view/cust_main/payment_history/payment.html @@ -1,5 +1,5 @@ <% $payment. ' '. $info. $desc. - $view. $change_pkg. $apply. $refund. $void. $delete. $unapply + $view. $email. $change_pkg. $apply. $refund. $void. $unapply %> <%init> @@ -103,7 +103,8 @@ if ($unapplied > 0) { if ( $opt{total_unapplied_refunds} > 0 ) { $apply.= ' ('. include( '/elements/popup_link.html', - 'label' => emt('apply to refund'), + 'label' => emt('apply refund'), + 'style' => 'white-space: nowrap', 'action' => "${p}edit/cust_pay_refund.cgi?". $cust_pay->paynum, 'actionlabel' => emt('Apply payment to refund'), @@ -139,6 +140,13 @@ my $view = ). ')'; +my $email = $opt{'has_email_address'} ? + q! (paynum. + q!','Email Payment Receipt')" TITLE="Send email receipt">email receipt)! + : ''; + my $change_pkg = ''; if ( $apply && $opt{'pkg-balances'} && $cust_pay->pkgnum ) { $change_pkg = @@ -154,54 +162,57 @@ if ( $apply && $opt{'pkg-balances'} && $cust_pay->pkgnum ) { my $refund = ''; my $refund_days = $opt{'card_refund-days'} || 120; -my $refund_right = ''; -$refund_right = 'Refund credit card payment' if $cust_pay->payby eq 'CARD'; -$refund_right = 'Refund Echeck payment' if $cust_pay->payby eq 'CHEK'; +my @refund_right = grep { $opt{$_} } $FS::CurrentUser::CurrentUser->refund_rights($cust_pay->payby); if ( $cust_pay->closed !~ /^Y/i - && $cust_pay->payby =~ /^(CARD|CHEK)$/ + && $cust_pay->payby =~ /^(CARD|CHEK|BILL)$/ && time-$cust_pay->_date < $refund_days*86400 && $cust_pay->unrefunded > 0 - && $opt{$refund_right} + && scalar(@refund_right) ) { + my $refundtitle = ($cust_pay->payby =~ /^(CARD|CHEK)$/) + ? emt('Send a refund for this payment to the payment gateway') + : emt('Record a refund for this payment'); + $refund = qq! (' . emt('refund') . ')'; } +$refund = '' if ($cust_pay->batchnum && !FS::pay_batch->can_handle_electronic_refunds); my $void = ''; 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') - ) +$void = ' ('. + include( '/elements/popup_link.html', + 'label' => emt('void'), + 'action' => "${p}misc/void-cust_pay.html?".$cust_pay->paynum, + 'actionlabel' => emt('Void payment'), + 'title' => emt('Void this payment from the database'). + $voidmsg, + ). + ')' if $cust_pay->closed !~ /^Y/i && ( ( $cust_pay->payby eq 'CARD' && $opt{'Credit card void'} ) || ( $cust_pay->payby eq 'CHEK' && $opt{'Echeck void'} ) || ( $cust_pay->payby !~ /^(CARD|CHEK)$/ && $opt{'Void payments'} ) ); -my $delete = ''; -$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'} - && $opt{'Delete payment'}; - my $unapply = ''; -$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) - && $opt{'Unapply payment'}; +if ($opt{'Unapply payment'} && !$cust_pay->closed) { + $unapply = areyousure_link("${p}misc/unapply-cust_pay.cgi?".$cust_pay->paynum, + emt('Are you sure you want to unapply this payment from invoices?'), + emt('Keep this payment, but dissociate it from the invoices it is currently applied against'), + emt('unapply') + ) + if @cust_bill_pay; + $unapply .= areyousure_link("${p}misc/unapply-cust_pay_refund.cgi?".$cust_pay->paynum, + emt('Are you sure you want to unapply this payment from refunds?'), + emt('Keep this payment, but dissociate it from the refunds it is currently applied to'), + emt('unapply refunds') + ) + if $cust_pay->refund_to_unapply; +}