summaryrefslogtreecommitdiff
path: root/httemplate/elements/order_pkg.js
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2014-01-08 17:23:05 -0800
committerIvan Kohler <ivan@freeside.biz>2014-01-08 17:23:05 -0800
commit8861d46820af163c7de7839178b6120c9b32ab2c (patch)
treeebd723b2d1ea70f57bc52f94c80d991b5f50094a /httemplate/elements/order_pkg.js
parent49809d3653e7ac4951d36716dce3cd25ba9c3728 (diff)
time/data/etc. unit pricing add-ons, RT#24392
Diffstat (limited to 'httemplate/elements/order_pkg.js')
-rw-r--r--httemplate/elements/order_pkg.js69
1 files changed, 67 insertions, 2 deletions
diff --git a/httemplate/elements/order_pkg.js b/httemplate/elements/order_pkg.js
index 4e41fd64a..393b845c9 100644
--- a/httemplate/elements/order_pkg.js
+++ b/httemplate/elements/order_pkg.js
@@ -21,8 +21,8 @@ function pkg_changed () {
}
}
-// if this form element exists, then the start date is a future
-// package change date; don't replace it
+ // if this form element exists, then the start date is a future
+ // package change date; don't replace it
if ( form.delay ) {
return;
}
@@ -39,6 +39,8 @@ function pkg_changed () {
date_button_disabled.style.display = '';
}
+ get_part_pkg_usageprice( opt.value, update_part_pkg_usageprice );
+
} else {
form.submitButton.disabled = true;
if ( discountnum ) { form.discountnum.disabled = true; }
@@ -46,6 +48,69 @@ function pkg_changed () {
}
}
+function update_part_pkg_usageprice(part_pkg_usageprice) {
+
+ var table = document.getElementById('cust_pkg_usageprice_table');
+
+ // black the current usage price rows
+ for ( var r = table.rows.length - 1; r >= 0; r-- ) {
+ table.deleteRow(r);
+ }
+
+ // add the new usage price rows
+ var rownum = 0;
+ var usagepriceArray = eval('(' + part_pkg_usageprice + ')' );
+ for ( var s = 0; s < usagepriceArray.length; s=s+2 ) {
+ //surely this should be some kind of JSON structure
+ var html = usagepriceArray[s+0];
+ var javascript = usagepriceArray[s+1];
+
+ // a lot like ("inspiried by") edit/elements/edit.html function spawn_<%$field%>
+
+ // XXX evaluate the javascript
+ //if (window.ActiveXObject) {
+ // window.execScript(newfunc);
+ //} else { /* (window.XMLHttpRequest) */
+ // //window.eval(newfunc);
+ // setTimeout(newfunc, 0);
+ //}
+
+ var row = table.insertRow(rownum++);
+
+ //var label_cell = document.createElement('TD');
+
+ //label_cell.id = '<% $field %>_label' + <%$field%>_fieldnum;
+
+ //label_cell.style.textAlign = "right";
+ //label_cell.style.verticalAlign = "top";
+ //label_cell.style.borderTop = "1px solid black";
+ //label_cell.style.paddingTop = "5px";
+
+ //label_cell.innerHTML = '<% $label %>';
+
+ //row.appendChild(label_cell);
+
+ var widget_cell = document.createElement('TD');
+
+ //widget_cell.style.borderTop = "1px solid black";
+ widget_cell.style.paddingTop = "3px";
+ widget_cell.colSpan = "2";
+
+ widget_cell.innerHTML = html;
+
+ row.appendChild(widget_cell);
+
+ }
+
+ if ( rownum > 0 ) {
+ document.getElementById('cust_pkg_usageprice_title').style.display = '';
+ } else {
+ document.getElementById('cust_pkg_usageprice_title').style.display = 'none';
+ }
+
+}
+
+
function standardize_new_location() {
var form = document.OrderPkgForm;
var loc = form.locationnum;