From 0343b90e15a5ad438ee572127d338f3d518f4185 Mon Sep 17 00:00:00 2001
From: ivan <ivan>
Date: Tue, 7 Apr 2009 18:15:17 +0000
Subject: [PATCH] truncate long labels that are TOO long... RT#3519

---
 FS/FS/svc_acct.pm | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/FS/FS/svc_acct.pm b/FS/FS/svc_acct.pm
index 6b7236f53..c92c32437 100644
--- a/FS/FS/svc_acct.pm
+++ b/FS/FS/svc_acct.pm
@@ -470,9 +470,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 ... ]
-- 
2.20.1