X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fsvc_broadband.pm;h=aaac891e6b2bd00c778d02622ce10a4a6db9374f;hb=f1e474e3ea4c658b9a1f84af108f09a65886055c;hp=ec915327b8b8c10b2cfb523fa284b3b4cf84fc41;hpb=58d44fbe5eb9ab32e6d87063a4a3b22ddba9a828;p=freeside.git diff --git a/FS/FS/svc_broadband.pm b/FS/FS/svc_broadband.pm index ec915327b..aaac891e6 100755 --- a/FS/FS/svc_broadband.pm +++ b/FS/FS/svc_broadband.pm @@ -87,7 +87,7 @@ points to. You can ask the object for a copy with the I method. sub table { 'svc_broadband'; } -=item insert +=item insert [ , OPTION => VALUE ... ] Adds this record to the database. If there is an error, returns the error, otherwise returns false. @@ -95,6 +95,12 @@ otherwise returns false. The additional fields pkgnum and svcpart (see FS::cust_svc) should be defined. An FS::cust_svc record will be created and inserted. +Currently available options are: I + +If I 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 # Standard FS::svc_Common::insert @@ -155,8 +161,10 @@ sub check { if($self->speed_down < 0) { return 'speed_down must be positive'; } if (not($self->ip_addr) or $self->ip_addr eq '0.0.0.0') { - $self->ip_addr($self->addr_block->next_free_addr->addr); - if (not $self->ip_addr) { + my $next_addr = $self->addr_block->next_free_addr; + if ($next_addr) { + $self->ip_addr($next_addr->addr); + } else { return "No free addresses in addr_block (blocknum: ".$self->blocknum.")"; } }