'action' => "${p}edit/cust_refund.cgi?popup=1;payby=BILL",
'cust_main' => $cust_main,
'actionlabel' => emt('Enter check refund'),
- 'width' => 392,
+ 'width' => 440,
&>
% }
%# invoice reports, combined statement
% if ( $curuser->access_right('List invoices') ) {
-% if ( $curuser->access_right('Bulk send customer notices')
+% if ( $curuser->access_right('Resend invoices')
% && $cust_main->invoicing_list_emailonly ) {
<A HREF="<% $p %>misc/email-customer-statement.html?table=cust_main;agent_virt_agentnum=<% $cust_main->agentnum %>;custnum=<% $custnum %>"><% mt('Email statement to this customer') |h %></A>
<BR>
% }
-% if ( $num_cust_bill > 0 ) {
- <A HREF="<% $p %>view/cust_main_statement-pdf.cgi?<% $custnum %>"><%
- mt('Download typeset statement PDF') |h %></A>
- <BR>
+% if ( $num_cust_bill > 0
+% && $curuser->access_right('View legacy typeset statements')
+% ) {
+ <A HREF="<% $p %>view/cust_main_statement-pdf.cgi?<% $custnum %>"><%
+ mt('Download typeset statement PDF') |h %></A>
+ <BR>
% }
<A HREF="<% $p %>search/report_cust_bill.html?custnum=<% $custnum %>"><% mt('Invoice reports') |h %></A>
% }
% if ( $item->{'balance_forward'} ) {
<& .balance_forward_row, $item->{'balance'}, $item->{'date'} &>
-% }
+% }
%} # foreach $item
+% if ( $old_history ) {
+<& .hide_history_row, $old_history++ &>
+% }
+
</TABLE>
</TD>
</TR>
</TABLE>
+<SCRIPT SRC="<% $fsurl %>elements/jquery.js"></SCRIPT>
+<SCRIPT SRC="<% $fsurl %>elements/page_pref.js"></SCRIPT>
<SCRIPT TYPE="text/javascript">
-function show_history () {
- //alert('showing history!');
-
+function show_history(show) { // but don't update pref
var balance_forward_row = document.getElementById('balance_forward_row');
- balance_forward_row.style.display = 'none';
+ balance_forward_row.style.display = show ? 'none' : '';
for ( var i = 0; i < <% $old_history %>; i++ ) {
var oldRow = document.getElementById('old_history'+i);
- oldRow.style.display = '';
+ oldRow.style.display = show ? '' : 'none';
}
+}
+
+function update_show_history (show) {
+ show = show ? 1 : 0;
+ show_history(show);
+ // update user pref (blind post, don't care about the output here)
+ set_page_pref('expand_old_history', '<% $custnum %>', show);
}
+$().ready(function() {
+ show_history(<% get_page_pref('expand_old_history', $custnum) %>);
+});
+
</SCRIPT>
<%def .balance_forward_row>
% my( $b, $date ) = @_;
<TD CLASS="grid" BGCOLOR="#dddddd">
<I><% mt("Starting balance on [_1]", time2str($date_format, $date) ) |h %></I>
- (<A HREF="javascript:void(0);" onClick="show_history();"><% mt('show prior history') |h %></A>)
+ (<A HREF="javascript:void(0);" onClick="update_show_history(true);"><% mt('show prior history') |h %></A>)
</TD>
<TD CLASS="grid" BGCOLOR="#dddddd"></TD>
</TR>
</%def>
+<%def .hide_history_row>
+% my $num = shift;
+ <TR ID="old_history<% $num %>" STYLE="display: none">
+ <TD CLASS="grid" BGCOLOR="#dddddd"></TD>
+ <TD CLASS="grid" BGCOLOR="#dddddd">
+ <I>(<A HREF="#" onclick="update_show_history(false)"><% mt('hide prior history') |h %></A>)</I>
+ </TD>
+ <TD CLASS="grid" BGCOLOR="#dddddd" COLSPAN=5></TD>
+ </TR>
+</%def>
+
<%shared>
my $conf = new FS::Conf;
my $date_format = $conf->config('date_format') || '%m/%d/%Y';
#rights
( map { $_ => $curuser->access_right($_) }
(
- 'View invoices', 'Void invoices', 'Unvoid invoices', 'Delete invoices',
+ 'View invoices', 'Void invoices', 'Unvoid invoices', 'Delete invoices', 'Resend invoices',
'Apply payment', 'Refund credit card payment', 'Refund Echeck payment',
+ 'Post refund', 'Post check refund', 'Post cash refund ', 'Refund payment',
'Credit card void', 'Echeck void', 'Void payments', 'Unvoid payments',
'Delete payment', 'Unapply payment',
'Apply credit', 'Delete credit', 'Unapply credit', 'Void credit', 'Unvoid credit',
#customer information
'total_owed' => $cust_main->total_owed,
'total_unapplied_refunds' => $cust_main->total_unapplied_refunds,
+ 'has_email_address' => scalar($cust_main->invoicing_list_emailonly),
);
$opt{'date_format'} ||= '%m/%d/%Y';
sub areyousure_link {
my ($url,$msg,$title,$label) = (shift,shift,shift,shift);
- ' (<A HREF="javascript:areyousure(\''.$url.'\',\''.$msg.'\')" TITLE="'.$title.'">'.$label.'</A>)';
+ ' (<A HREF="javascript:areyousure(\''.$url.'\',\''.$msg.'\')" TITLE="'.$title.'" STYLE="white-space: nowrap;">'.$label.'</A>)';
}
</%init>