use FS::domain_record;
use FS::part_export;
use FS::cdr;
+use FS::UI::Web;
#most FS::svc_ classes are autoloaded in svc_x emthod
use FS::svc_acct; #this one is used in the cache stuff
($part_svc) = grep { $_->svcpart == $self->svcpart } $cust_pkg->part_svc;
return "No svcpart ". $self->svcpart.
" services in pkgpart ". $cust_pkg->pkgpart
- unless $part_svc;
+ unless $part_svc || $ignore_quantity;
return "Already ". $part_svc->get('num_cust_svc'). " ". $part_svc->svc.
" services for pkgnum ". $self->pkgnum
- if $part_svc->get('num_avail') == 0 and !$ignore_quantity;
+ if !$ignore_quantity && $part_svc->get('num_avail') <= 0 ;
}
$self->SUPER::check;
sub export_links {
my $self = shift;
my $svc_x = $self->svc_x
- or return "can't find ". $self->part_svc->svcdb. '.svcnum '. $self->svcnum;
+ or return [ "can't find ". $self->part_svc->svcdb. '.svcnum '. $self->svcnum ];
$svc_x->export_links;
}
my $extra_sql = ' WHERE '.join(' AND ', @extra_sql);
#for agentnum
my $addl_from = ' LEFT JOIN cust_pkg USING ( pkgnum )'.
- ' LEFT JOIN cust_main USING ( custnum )'.
+ FS::UI::Web::join_cust_main('cust_pkg', 'cust_pkg').
' LEFT JOIN part_svc USING ( svcpart )';
(