make svc_www.usersvc optional
[freeside.git] / FS / FS / svc_www.pm
index d7a42c8..12d7e92 100644 (file)
@@ -74,7 +74,7 @@ points to.  You can ask the object for a copy with the I<hash> method.
 
 sub table { 'svc_www'; }
 
 
 sub table { 'svc_www'; }
 
-=item insert
+=item insert [ , OPTION => VALUE ... ]
 
 Adds this record to the database.  If there is an error, returns the error,
 otherwise returns false.
 
 Adds this record to the database.  If there is an error, returns the error,
 otherwise returns false.
@@ -82,6 +82,13 @@ otherwise returns false.
 The additional fields pkgnum and svcpart (see L<FS::cust_svc>) should be 
 defined.  An FS::cust_svc record will be created and inserted.
 
 The additional fields pkgnum and svcpart (see L<FS::cust_svc>) should be 
 defined.  An FS::cust_svc record will be created and inserted.
 
+Currently available options are: I<depend_jobnum>
+
+If I<depend_jobnum> is set (to a scalar jobnum or an array reference of
+jobnums), all provisioning jobs will have a dependancy on the supplied
+jobnum(s) (they will not run until the specific job(s) complete(s)).
+
+
 =cut
 
 sub insert {
 =cut
 
 sub insert {
@@ -124,7 +131,7 @@ sub insert {
     $self->recnum($domain_record->recnum);
   }
 
     $self->recnum($domain_record->recnum);
   }
 
-  $error = $self->SUPER::insert;
+  $error = $self->SUPER::insert(@_);
   if ( $error ) {
     $dbh->rollback if $oldAutoCommit;
     return $error;
   if ( $error ) {
     $dbh->rollback if $oldAutoCommit;
     return $error;
@@ -197,7 +204,7 @@ sub check {
   my $error =
     $self->ut_numbern('svcnum')
 #    || $self->ut_number('recnum')
   my $error =
     $self->ut_numbern('svcnum')
 #    || $self->ut_number('recnum')
-    || $self->ut_number('usersvc')
+    || $self->ut_numbern('usersvc')
   ;
   return $error if $error;
 
   ;
   return $error if $error;
 
@@ -231,10 +238,13 @@ sub check {
     return "Illegal recnum: ". $self->recnum;
   }
 
     return "Illegal recnum: ". $self->recnum;
   }
 
-  return "Unknown usersvc (svc_acct.svcnum): ". $self->usersvc
-    unless qsearchs('svc_acct', { 'svcnum' => $self->usersvc } );
+  if ( $self->usersvc ) {
+    return "Unknown usersvc0 (svc_acct.svcnum): ". $self->usersvc
+      unless qsearchs('svc_acct', { 'svcnum' => $self->usersvc } );
+  }
+
+  $self->SUPER::check;
 
 
-  ''; #no error
 }
 
 =item domain_record
 }
 
 =item domain_record