diff options
author | ivan <ivan> | 2011-08-11 00:38:01 +0000 |
---|---|---|
committer | ivan <ivan> | 2011-08-11 00:38:01 +0000 |
commit | a78d8300b4be8ff4fbb4b5c64139d4c442b16c2f (patch) | |
tree | 3dab8b6f358bff37ab005ca147f749303b063cda /httemplate/elements | |
parent | 5ee66912dd45edf27a7f679b249dda595a8ab7b0 (diff) |
hide start date on package order for specific package definitions, RT#13783
Diffstat (limited to 'httemplate/elements')
-rw-r--r-- | httemplate/elements/order_pkg.js | 17 | ||||
-rw-r--r-- | httemplate/elements/select-part_pkg.html | 2 | ||||
-rw-r--r-- | httemplate/elements/tr-select-cust-part_pkg.html | 16 |
3 files changed, 26 insertions, 9 deletions
diff --git a/httemplate/elements/order_pkg.js b/httemplate/elements/order_pkg.js index 2c13ed254..2f53e3631 100644 --- a/httemplate/elements/order_pkg.js +++ b/httemplate/elements/order_pkg.js @@ -1,8 +1,9 @@ -function enable_order_pkg () { +function pkg_changed () { var form = document.OrderPkgForm; var discountnum = form.discountnum; if ( form.pkgpart.selectedIndex > 0 ) { + form.submitButton.disabled = false; if ( discountnum ) { if ( form.pkgpart.options[form.pkgpart.selectedIndex].getAttribute('data-can_discount') == 1 ) { @@ -11,6 +12,20 @@ function enable_order_pkg () { form.discountnum.disabled = true; } } + + if ( form.pkgpart.options[form.pkgpart.selectedIndex].getAttribute('data-can_start_date') == 1 ) { + form.start_date_text.disabled = false; + form.start_date.style.backgroundColor = '#ffffff'; + form.start_date_button.style.display = ''; + form.start_date_button_disabled.style.display = 'none'; + form.invoice_terms.disabled = true; + } else { + form.start_date_text.disabled = true; + form.start_date.style.backgroundColor = '#dddddd'; + form.start_date_button.style.display = 'none'; + form.start_date_button_disabled.style.display = ''; + } + } else { form.submitButton.disabled = true; if ( discountnum ) { form.discountnum.disabled = true; } diff --git a/httemplate/elements/select-part_pkg.html b/httemplate/elements/select-part_pkg.html index 885bb806b..439c4b53e 100644 --- a/httemplate/elements/select-part_pkg.html +++ b/httemplate/elements/select-part_pkg.html @@ -23,7 +23,7 @@ Example: 'empty_label' => 'Select package', #should this be the default? 'label_callback' => sub { shift->pkg_comment }, 'hashref' => \%hash, - 'extra_option_attributes' => [ 'can_discount' ], + 'extra_option_attributes' => [ 'can_discount', 'can_start_date' ], %opt, ) %> diff --git a/httemplate/elements/tr-select-cust-part_pkg.html b/httemplate/elements/tr-select-cust-part_pkg.html index e55cbee30..767d23264 100644 --- a/httemplate/elements/tr-select-cust-part_pkg.html +++ b/httemplate/elements/tr-select-cust-part_pkg.html @@ -7,9 +7,10 @@ <SCRIPT TYPE="text/javascript"> - function part_pkg_opt(what,value,text,can_discount) { + function part_pkg_opt(what, value, text, can_discount, can_start_date) { var optionName = new Option(text, value, false, false); - optionName.setAttribute('data-can_discount', can_discount); + optionName.setAttribute('data-can_discount', can_discount); + optionName.setAttribute('data-can_start_date', can_start_date); var length = what.length; what.options[length] = optionName; } @@ -37,11 +38,12 @@ // add the new packages opt(what.form.pkgpart, '', 'Select package'); var packagesArray = eval('(' + part_pkg + ')' ); - for ( var s = 0; s < packagesArray.length; s=s+3 ) { - var packagesLabel = packagesArray[s+1]; - var can_discount = packagesArray[s+2]; + for ( var s = 0; s < packagesArray.length; s=s+4 ) { + var packagesLabel = packagesArray[s+1]; + var can_discount = packagesArray[s+2]; + var can_start_date = packagesArray[s+3]; part_pkg_opt( - what.form.pkgpart, packagesArray[s], packagesLabel, can_discount + what.form.pkgpart, packagesArray[s], packagesLabel, can_discount, can_start_date ); } @@ -75,7 +77,7 @@ 'curr_value' => $opt{'curr_value'}, #$pkgpart 'classnum' => $opt{'classnum'}, 'cust_main' => $opt{'cust_main'}, #$cust_main - 'onchange' => 'enable_order_pkg', + 'onchange' => 'pkg_changed', &> </TD> </TR> |