Merge branch 'FREESIDE_3_BRANCH' of ssh://git.freeside.biz/home/git/freeside into...
[freeside.git] / FS / FS / cust_pkg.pm
index ef25c24..b2cc874 100644 (file)
@@ -1057,9 +1057,10 @@ sub cancel {
      )
   {
     my $msgnum = $conf->config('cancel_msgnum', $cust_main->agentnum);
+    my $error = '';
     if ( $msgnum ) {
       my $msg_template = qsearchs('msg_template', { msgnum => $msgnum });
-      my $error = $msg_template->send(
+      $error = $msg_template->send(
         'cust_main' => $cust_main,
         'object'    => $self,
       );
@@ -1090,8 +1091,8 @@ sub cancel {
       'cust_main' => $cust_main->referring_cust_main,
       'object'    => $self,
     );
-     #should this do something on errors?
-   }
+    #should this do something on errors?
+  }
 
   ''; #no errors
 
@@ -2362,13 +2363,16 @@ sub change {
     $same_pkgpart = 0;
   }
 
+  if ($opt->{'waive_setup'}) { $self->set('waive_setup', $opt->{'waive_setup'}) }
+  else { $self->set('waive_setup', ''); }
+
   # Before going any further here: if the package is still in the pre-setup
   # state, it's safe to modify it in place. No need to charge/credit for 
   # partial period, transfer usage pools, copy invoice details, or change any
   # dates. We DO need to "transfer" services (from the package to itself) to
   # check their validity on the new pkgpart.
   if ( ! $self->setup and ! $opt->{cust_pkg} and ! $opt->{cust_main} ) {
-    foreach ( qw( locationnum pkgpart quantity refnum salesnum ) ) {
+    foreach ( qw( locationnum pkgpart quantity refnum salesnum waive_setup ) ) {
       if ( length($opt->{$_}) ) {
         $self->set($_, $opt->{$_});
       }