X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=FS%2FFS%2Fsvc_Common.pm;h=b67992dc265c27ca0f0267d87c4486ddbc22016f;hp=1dd9ffb633e0a83f0781d6247f06997667ca5c91;hb=HEAD;hpb=46fe3dbcb3ca97d1f3c70d49351846cf0ab6461d diff --git a/FS/FS/svc_Common.pm b/FS/FS/svc_Common.pm index 1dd9ffb63..b67992dc2 100644 --- a/FS/FS/svc_Common.pm +++ b/FS/FS/svc_Common.pm @@ -122,6 +122,15 @@ sub virtual_fields { =item label +Returns a label to identify a record of this service. +Label may be displayed on freeside screens, and within customer bills. + +For example, $obj->label may return: + + - A provisioned phone number for svc_phone + - The mailing list name and e-mail address for svc_mailinglist + - The address of a rental property svc_realestate + svc_Common provides a fallback label subroutine that just returns the svcnum. =cut @@ -477,6 +486,7 @@ passed to export commands. sub replace { my $new = shift; + $noexport_hack = $new->no_export if $new->no_export; my $old = ( blessed($_[0]) && $_[0]->isa('FS::Record') ) ? shift @@ -1481,8 +1491,12 @@ sub search { } #svcnum - if ( $params->{'svcnum'} =~ /^(\d+)$/ ) { - push @where, "svcnum = $1"; + if ( $params->{'svcnum'} ) { + my @svcnum = ref( $params->{'svcnum'} ) + ? @{ $params->{'svcnum'} } + : $params->{'svcnum'}; + @svcnum = grep /^\d+$/, @svcnum; + push @where, 'svcnum IN ('. join(',', @svcnum) . ')' if @svcnum; } # svcpart @@ -1582,4 +1596,3 @@ from the base documentation. =cut 1; -