Bug fix: checking ref() instead of defined()
[freeside.git] / FS / FS / cust_pkg.pm
index 0f0983b..56e4c90 100644 (file)
@@ -1643,7 +1643,7 @@ sub unsuspend {
          )
       or $hash{'order_date'} == $hash{'susp'}
       or $self->part_pkg->option('unused_credit_suspend')
-      or ( defined($reason) and $reason->unused_credit )
+      or ( ref($reason) and $reason->unused_credit )
   ) {
     $adjust_bill = 0;
   }
@@ -2456,6 +2456,13 @@ sub modify_charge {
 
   } # else simply ignore them; the UI shouldn't allow editing the fields
 
+  
+  if ( exists($opt{'taxclass'}) 
+          and $part_pkg->taxclass ne $opt{'taxclass'}) {
+    
+      $part_pkg->set('taxclass', $opt{'taxclass'});
+  }
+
   my $error;
   if ( $part_pkg->modified or $pkg_opt_modified ) {
     # can we safely modify the package def?