summaryrefslogtreecommitdiff
path: root/httemplate
diff options
context:
space:
mode:
authorJonathan Prykop <jonathan@freeside.biz>2015-10-23 20:24:40 -0500
committerJonathan Prykop <jonathan@freeside.biz>2015-10-23 20:24:40 -0500
commitacfdb8bec93849e35ae5c4abc276d6ca8006f717 (patch)
tree2352be75383b347dd05892e661642384d84e31e6 /httemplate
parentbeb4c90e57b8063677a556a1a0bf10395ca49d4e (diff)
RT#38432: OFM - Send refund receipt
Diffstat (limited to 'httemplate')
-rw-r--r--httemplate/edit/msg_template/email.html10
-rw-r--r--httemplate/view/cust_pay.html15
-rw-r--r--httemplate/view/cust_refund.html36
3 files changed, 50 insertions, 11 deletions
diff --git a/httemplate/edit/msg_template/email.html b/httemplate/edit/msg_template/email.html
index b0c1aa31a..12a4a6f56 100644
--- a/httemplate/edit/msg_template/email.html
+++ b/httemplate/edit/msg_template/email.html
@@ -4,7 +4,7 @@
'body_etc' => $body_etc,
'name_singular' => 'template',
'table' => 'msg_template',
- 'viewall_dir' => 'browse',
+ 'viewall_url' => $fsurl.'browse/msg_template/email.html',
'agent_virt' => 1,
'agent_null' => 1,
'agent_null_right' => [ 'View global templates', 'Edit global templates' ],
@@ -302,6 +302,13 @@ my %substitutions = (
'$payinfo' => 'Card/account# (masked)',
'$error' => 'Decline reason',
],
+ 'cust_refund' => [
+ '$refundnum' => 'Refund#',
+ '$refund' => 'Refund Amount',
+ '$payby' => 'Refund method',
+ '$date' => 'Refund date',
+ '$payinfo' => 'Card/account# (masked)',
+ ],
'system_log' => [
'$logmessage' => 'Log entry message',
'$loglevel' => 'Log entry level',
@@ -314,6 +321,7 @@ tie my %sections, 'Tie::IxHash', (
'service' => 'Service address',
'cust_main' => 'Customer status and payment info',
'cust_pkg' => 'Package fields',
+'cust_refund' => 'Refund fields',
'cust_bill' => 'Invoice fields',
'cust_pay' => 'Payment fields',
'svc_acct' => 'Login service fields',
diff --git a/httemplate/view/cust_pay.html b/httemplate/view/cust_pay.html
index 76a24884a..b34a90818 100644
--- a/httemplate/view/cust_pay.html
+++ b/httemplate/view/cust_pay.html
@@ -3,8 +3,10 @@
<& /elements/header-popup.html, mt("$thing Receipt") &>
<div align="center">
- <A HREF="javascript:self.parent.location = '<% $pr_link %>'"><% mt('Print') |h %></A> |
- <A HREF="javascript:self.location = '<% $email_link %>'"><% mt('Re-email') |h %></A>
+ <A HREF="javascript:self.parent.location = '<% $pr_link %>'"><% mt('Print') |h %></A>
+% if ( $cust_main->invoicing_list_emailonly ) {
+ | <A HREF="javascript:self.location = '<% $email_link %>'"><% mt('Re-email') |h %></A>
+% }
</div><BR>
% } elsif ( $link eq 'print' ) {
@@ -180,11 +182,13 @@ my $cust_pay = qsearchs({
});
die "$thing #$paynum not found!" unless $cust_pay;
+my $cust_main = $cust_pay->cust_main;
+
my $pr_link = "${p}view/cust_pay.html?link=print;paynum=$paynum;void=$void";
my $email_link = "${p}view/cust_pay.html?link=email;paynum=$paynum;void=$void";
my $custnum = $cust_pay->custnum;
-my $display_custnum = $cust_pay->cust_main->display_custnum;
+my $display_custnum = $cust_main->display_custnum;
my $conf = new FS::Conf;
@@ -195,8 +199,9 @@ tie my %payby, 'Tie::IxHash', FS::payby->payby2longname;
my $email_error;
if ( $link eq 'email' ) {
- my $email_error = $cust_pay->send_receipt(
- 'manual' => 1,
+ $email_error = $cust_pay->send_receipt(
+ 'manual' => 1,
+ 'cust_main' => $cust_main,
);
warn "can't send payment receipt/statement: $email_error" if $email_error;
diff --git a/httemplate/view/cust_refund.html b/httemplate/view/cust_refund.html
index 319761506..d5f5eb232 100644
--- a/httemplate/view/cust_refund.html
+++ b/httemplate/view/cust_refund.html
@@ -2,7 +2,12 @@
<& /elements/header-popup.html, mt('Refund Receipt') &>
- <CENTER><A HREF="javascript:self.parent.location = '<% $pr_link %>'"><% mt('Print') |h %></A></CENTER><BR>
+ <DIV ALIGN="center">
+ <A HREF="javascript:self.parent.location = '<% $pr_link %>'"><% mt('Print') |h %></A>
+% if ( $cust_main->invoicing_list_emailonly ) {
+ | <A HREF="javascript:self.location = '<% $email_link %>'"><% mt('Email') |h %></A>
+% }
+ </DIV>
% } elsif ( $link eq 'print' ) {
@@ -16,6 +21,12 @@
%>
<BR><BR>
+% } elsif ( $link eq 'email' ) {
+% if ( $email_error ) {
+ <& /elements/header-popup.html, mt("Error re-emailing receipt: [_1]", $email_error) &>
+% } else {
+ <& /elements/header-popup.html, mt("Re-emailed receipt") &>
+% }
% } else {
<& /elements/header.html, mt('Refund Receipt'), menubar(
@@ -26,7 +37,7 @@
% }
-% unless ($link eq 'popup' ) {
+% unless ($link =~ /^(popup|email)$/ ) {
<& /elements/small_custview.html,
$custnum,
scalar($conf->config('countrydefault')),
@@ -91,9 +102,14 @@
window.print();
</SCRIPT>
-% }
+% } elsif ( $link eq 'email' ) {
-% if ( $link =~ /^(popup|print)$/ ) {
+ <SCRIPT TYPE="text/javascript">
+ window.top.location.reload();
+ </SCRIPT>
+
+% }
+% if ( $link =~ /^(popup|print|email)$/ ) {
</BODY>
</HTML>
% } else {
@@ -125,10 +141,13 @@ my $cust_refund = qsearchs({
});
die "Refund #$refundnum not found!" unless $cust_refund;
+my $cust_main = $cust_refund->cust_main;
+
my $pr_link = "${p}view/cust_refund.html?link=print;refundnum=$refundnum";
+my $email_link = "${p}view/cust_refund.html?link=email;refundnum=$refundnum";
my $custnum = $cust_refund->custnum;
-my $display_custnum = $cust_refund->cust_main->display_custnum;
+my $display_custnum = $cust_main->display_custnum;
my $conf = new FS::Conf;
@@ -136,4 +155,11 @@ my $money_char = $conf->config('money_char') || '$';
tie my %payby, 'Tie::IxHash', FS::payby->payby2longname;
+my $email_error;
+
+if ( $link eq 'email' ) {
+ $email_error = $cust_refund->send_receipt( 'cust_main' => $cust_main );
+ warn "can't send refund receipt: $email_error" if $email_error;
+}
+
</%init>