diff options
author | ivan <ivan> | 2009-04-07 18:15:15 +0000 |
---|---|---|
committer | ivan <ivan> | 2009-04-07 18:15:15 +0000 |
commit | 6ec8ff467b97a07dcf353631809d69485fb9958a (patch) | |
tree | e18eb2d5a0c3adf8331b06738b6fe30ba3155376 | |
parent | 792155f15ac9c520dac7b72fdbddd894bd2b3133 (diff) |
truncate long labels that are TOO long... RT#3519
-rw-r--r-- | FS/FS/svc_acct.pm | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/FS/FS/svc_acct.pm b/FS/FS/svc_acct.pm index 7bcd0e7d2..9d14b84af 100644 --- a/FS/FS/svc_acct.pm +++ b/FS/FS/svc_acct.pm @@ -459,9 +459,12 @@ history records. sub label_long { my $self = shift; - ( $self->finger =~ /\S/ ) - ? $self->finger. ' <'.$self->label(@_).'>' - : $self->label(@_); + my $label = $self->label(@_); + my $finger = $self->finger; + return $label unless $finger =~ /\S/; + my $maxlen = 40 - length($label) - length($self->cust_svc->part_svc->svc); + $finger = substr($finger, 0, $maxlen-3).'...' if length($finger) > $maxlen; + "$finger <$label>"; } =item insert [ , OPTION => VALUE ... ] |