RT# 82137 - default payment amount now has processing fee in total if processing...
[freeside.git] / httemplate / elements / select-part_pkg.html
index fb45c0e..1f7b42f 100644 (file)
@@ -79,7 +79,7 @@ function toggle_disabled_part_pkg (id,showdisabled,noload) {
     if (showdisabled || selected[pkginfo.pkgpart] || !pkginfo.disabled) {
       var newopt = document.createElement('option');
       newopt.value = pkginfo.pkgpart;
-      newopt.label = pkginfo.label;
+      newopt.text = pkginfo.label;
       newopt.selected = selected[newopt.value] ? true : false;
       selectbox.appendChild(newopt);
     }
@@ -125,6 +125,7 @@ if ($opt{'toggle_disabled'}) {
     order_by
     pre_options
     post_options
+    select
   ) ) {
     die "Cannot use toggle_disabled with $someopt"
       if exists $opt{$someopt};
@@ -153,7 +154,15 @@ if ( exists($opt{'classnum'}) && defined($opt{'classnum'}) ) {
 
 # currently can't handle this, either
 die 'Use of toggle_disabled with classnum has not been implemented'
-  if exists $hash{'classnum'};
+  if $opt{'toggle_disabled'} && exists($hash{'classnum'});
+
+# CAUTION: For proper functioning of toggle_disabled,
+# please ensure changes to default options are synced with misc/xmlhttp-part_pkg.cgi
+
+$opt{'select'} = 'part_pkg.*, setup_option.optionvalue AS _setup_fee,
+                              recur_option.optionvalue AS _recur_fee'
+  unless $opt{'select'};
+$opt{'addl_from'} .= FS::part_pkg->join_options_sql;
 
 $opt{'extra_sql'} .= ( keys(%hash) ? ' AND ' : ' WHERE ' ).
                      FS::part_pkg->curuser_pkgs_sql;