diff options
Diffstat (limited to 'FS/FS/cust_svc.pm')
-rw-r--r-- | FS/FS/cust_svc.pm | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/FS/FS/cust_svc.pm b/FS/FS/cust_svc.pm index 3f7348321..08183b46c 100644 --- a/FS/FS/cust_svc.pm +++ b/FS/FS/cust_svc.pm @@ -702,10 +702,10 @@ sub pkg_cancel_date { return $cust_pkg->getfield('cancel') || ''; } -=item label +=item label [ LOCALE ] Returns a list consisting of: -- The name of this service (from part_svc) +- The name of this service (from part_svc), optionally localized - A meaningful identifier (username, domain, or mail alias) - The table name (i.e. svc_domain) for this service - svcnum @@ -714,7 +714,7 @@ Usage example: my($label, $value, $svcdb) = $cust_svc->label; -=item label_long +=item label_long [ LOCALE ] Like the B<label> method, except the second item in the list ("meaningful identifier") may be longer - typically, a full name is included. @@ -727,20 +727,25 @@ sub label_long { shift->_label('svc_label_long', @_); } sub _label { my $self = shift; my $method = shift; + my $locale = shift; my $svc_x = $self->svc_x or return "can't find ". $self->part_svc->svcdb. '.svcnum '. $self->svcnum; - $self->$method($svc_x); + $self->$method($svc_x, undef, undef, $locale); } +# svc_label(_long) takes three arguments: end date, start date, locale +# and FS::svc_*::label methods must accept those also, if they even care + sub svc_label { shift->_svc_label('label', @_); } sub svc_label_long { shift->_svc_label('label_long', @_); } sub _svc_label { my( $self, $method, $svc_x ) = ( shift, shift, shift ); + my ($end, $start, $locale) = @_; ( - $self->part_svc->svc, + $self->part_svc->svc_locale($locale), $svc_x->$method(@_), $self->part_svc->svcdb, $self->svcnum |