summaryrefslogtreecommitdiff
path: root/httemplate/elements
diff options
context:
space:
mode:
authorivan <ivan>2011-10-24 01:15:54 +0000
committerivan <ivan>2011-10-24 01:15:54 +0000
commit60ad366f6b218de3f229b4ccdc033b96863ea3e9 (patch)
tree906becec320d9d9755c99156a1b3f2bed13f1043 /httemplate/elements
parentc7cea202843a5a5140d1347c199c0f877a8fa55f (diff)
fix discounts not appearing for one-time charge packages, RT#13654
Diffstat (limited to 'httemplate/elements')
-rw-r--r--httemplate/elements/order_pkg.js3
-rw-r--r--httemplate/elements/tr-select-discount.html30
2 files changed, 13 insertions, 20 deletions
diff --git a/httemplate/elements/order_pkg.js b/httemplate/elements/order_pkg.js
index 2f53e36..4807359 100644
--- a/httemplate/elements/order_pkg.js
+++ b/httemplate/elements/order_pkg.js
@@ -8,8 +8,10 @@ function pkg_changed () {
if ( discountnum ) {
if ( form.pkgpart.options[form.pkgpart.selectedIndex].getAttribute('data-can_discount') == 1 ) {
form.discountnum.disabled = false;
+ discountnum_changed(form.discountnum);
} else {
form.discountnum.disabled = true;
+ discountnum_changed(form.discountnum);
}
}
@@ -29,6 +31,7 @@ function pkg_changed () {
} else {
form.submitButton.disabled = true;
if ( discountnum ) { form.discountnum.disabled = true; }
+ discountnum_changed(form.discountnum);
}
}
diff --git a/httemplate/elements/tr-select-discount.html b/httemplate/elements/tr-select-discount.html
index 6bfc485..30a60ec 100644
--- a/httemplate/elements/tr-select-discount.html
+++ b/httemplate/elements/tr-select-discount.html
@@ -81,12 +81,14 @@
function <% $name %>_changed(what) {
var <% $name %> = what.options[what.selectedIndex].value;
- if ( <% $name %> == '-1' ) {
+ if ( <% $name %> == '-1' && ! what.disabled ) {
<% $ge %>('<% $name %>__type_label0').style.display = '';
<% $ge %>('<% $name %>__type_label0').style.visibility = '';
<% $ge %>('<% $name %>__type').style.display = '';
<% $ge %>('<% $name %>__type').style.visibility = '';
-% #XXX retrieve previous visibility for amount, percent :/
+
+ <% $name %>__type_changed( <% $ge %>('<% $name %>__type') );
+
<% $ge %>('<% $name %>_months_label0').style.display = '';
<% $ge %>('<% $name %>_months_label0').style.visibility = '';
<% $ge %>('<% $name %>_months').style.display = '';
@@ -104,19 +106,7 @@
<% $ge %>('<% $name %>__type').style.display = 'none';
<% $ge %>('<% $name %>__type').style.visibility = 'hidden';
-% #XXX save visibility settings for amount, percent :/
- <% $ge %>('<% $name %>_amount_label0').style.display = 'none';
- <% $ge %>('<% $name %>_amount_label0').style.visibility = 'hidden';
- <% $ge %>('<% $name %>_amount_input0').style.display = 'none';
- <% $ge %>('<% $name %>_amount_input0').style.visibility = 'hidden';
- <% $ge %>('<% $name %>_amount_input0').style.display = 'none';
- <% $ge %>('<% $name %>_amount_input0').style.visibility = 'hidden';
- <% $ge %>('<% $name %>_percent_label0').style.display = 'none';
- <% $ge %>('<% $name %>_percent_label0').style.visibility = 'hidden';
- <% $ge %>('<% $name %>_percent_input0').style.display = 'none';
- <% $ge %>('<% $name %>_percent_input0').style.visibility = 'hidden';
- <% $ge %>('<% $name %>_percent_input0').style.display = 'none';
- <% $ge %>('<% $name %>_percent_input0').style.visibility = 'hidden';
+ <% $name %>__type_changed( <% $ge %>('<% $name %>__type') );
<% $ge %>('<% $name %>_months_label0').style.display = 'none';
<% $ge %>('<% $name %>_months_label0').style.visibility = 'hidden';
@@ -137,15 +127,15 @@
function <% $name %>__type_changed(what) {
var <% $name %>__type = what.options[what.selectedIndex].value;
- if ( <% $name %>__type == '<% $select %>' ) {
+ if ( <% $name %>__type == '<% $select %>' || what.style.display == 'none' ) {
<% $ge %>('<% $name %>_amount_label0').style.display = 'none';
<% $ge %>('<% $name %>_amount_label0').style.visibility = 'hidden';
- <% $ge %>('<% $name %>_amount').style.display = 'none';
- <% $ge %>('<% $name %>_amount').style.visibility = 'hidden';
+ <% $ge %>('<% $name %>_amount_input0').style.display = 'none';
+ <% $ge %>('<% $name %>_amount_input0').style.visibility = 'hidden';
<% $ge %>('<% $name %>_percent_label0').style.display = 'none';
<% $ge %>('<% $name %>_percent_label0').style.visibility = 'hidden';
- <% $ge %>('<% $name %>_percent').style.display = 'none';
- <% $ge %>('<% $name %>_percent').style.visibility = 'hidden';
+ <% $ge %>('<% $name %>_percent_input0').style.display = 'none';
+ <% $ge %>('<% $name %>_percent_input0').style.visibility = 'hidden';
} else if ( <% $name %>__type == 'Amount' ) {
<% $ge %>('<% $name %>_amount_label0').style.display = '';
<% $ge %>('<% $name %>_amount_label0').style.visibility = '';