summaryrefslogtreecommitdiff
path: root/httemplate
diff options
context:
space:
mode:
Diffstat (limited to 'httemplate')
-rw-r--r--httemplate/view/cust_main/billing.html20
1 files changed, 16 insertions, 4 deletions
diff --git a/httemplate/view/cust_main/billing.html b/httemplate/view/cust_main/billing.html
index 6c4524476..aeebc5ab2 100644
--- a/httemplate/view/cust_main/billing.html
+++ b/httemplate/view/cust_main/billing.html
@@ -33,8 +33,7 @@
'subs' => [ 'get_display_recurring'] &>
<SCRIPT>
-<&| /elements/onload.js &>
-get_display_recurring('custnum',<% $cust_main->custnum %>, function (xmlresult) {
+function set_display_recurring (xmlresult) {
var recurring = JSON.parse(xmlresult);
var rlabel = document.getElementById('recurring_label');
var rvalue = document.getElementById('recurring_value');
@@ -66,10 +65,23 @@ get_display_recurring('custnum',<% $cust_main->custnum %>, function (xmlresult)
} else {
rrow.parentNode.removeChild(rrow);
}
-});
-</&>
+}
</SCRIPT>
+% # 10 is an arbitrary number, use ajax for customers with many packages
+% if ( $cust_main->num_billing_pkgs > 10 ) {
+<& '/elements/xmlhttp.html',
+ 'url' => $fsurl.'misc/xmlhttp-cust_main-display_recurring.html',
+ 'subs' => [ 'get_display_recurring'] &>
+<SCRIPT>
+get_display_recurring('custnum',<% $cust_main->custnum %>,set_display_recurring);
+</SCRIPT>
+% } else {
+<SCRIPT>
+set_display_recurring(<% encode_json({'display_recurring' => [ $cust_main->display_recurring ]}) |js_string %>);
+</SCRIPT>
+% }
+
% if ( $conf->exists('cust_main-select-prorate_day') ) {
<TR>
<TD ALIGN="right"><% mt('Prorate day of month') |h %></TD>