From: ivan Date: Fri, 10 Oct 2008 23:30:41 +0000 (+0000) Subject: quick kludge to eliminate exact duplicates in h_labels_short in an effort to reduce... X-Git-Tag: root_of_webpay_support~324 X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=c8957643638264651261491fd3b25beeabdbedab quick kludge to eliminate exact duplicates in h_labels_short in an effort to reduce the number of "XXX service listing twice on invoice" incidents, RT#3944. still should be possible to fundamentally do better with the function in the first place --- diff --git a/FS/FS/cust_pkg.pm b/FS/FS/cust_pkg.pm index fd8b73ae8..b3359ca64 100644 --- a/FS/FS/cust_pkg.pm +++ b/FS/FS/cust_pkg.pm @@ -1504,7 +1504,8 @@ sub h_labels_short { foreach $self->h_labels(@_); my @labels; foreach my $label ( keys %labels ) { - my @values = @{ $labels{$label} }; + my %seen = (); + my @values = grep { ! $seen{$_}++ } @{ $labels{$label} }; my $num = scalar(@values); if ( $num > $max_same_services ) { push @labels, "$label ($num)";