From 6d13a0d4dd94fd0294b25e5cd15be91e890db84c Mon Sep 17 00:00:00 2001 From: jeff Date: Mon, 24 Nov 2008 15:18:42 +0000 Subject: [PATCH] be more accepting --- FS/FS/part_export/soma.pm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/FS/FS/part_export/soma.pm b/FS/FS/part_export/soma.pm index b290db844..a0b433d84 100644 --- a/FS/FS/part_export/soma.pm +++ b/FS/FS/part_export/soma.pm @@ -381,7 +381,11 @@ sub esn { my ( $self, $svc ) = @_; my $svcdb = $svc->cust_svc->part_svc->svcdb; - return sprintf( '%016X', $svc->title ) if $svcdb eq 'svc_external'; + if ($svcdb eq 'svc_external') { + my $esn = $svc->title; + $esn =~ /^\s*(\d[a-fA-F])+\s*$/ && ($esn = $1); + return sprintf( '%016X', $esn ) if $svcdb eq 'svc_external'; + } my $cust_pkg = $svc->cust_svc->cust_pkg; return '' unless $cust_pkg; @@ -394,7 +398,10 @@ sub esn { warn "part_export::soma found multiple ESNs for cust_svc ". $svc->svcnum if scalar( @cust_svc ) > 1; - sprintf( '%016X', $cust_svc[0]->svc_x->title ); + my $esn = $cust_svc[0]->svc_x->title; + $esn =~ /^\s*(\d[a-fA-F])+\s*$/ && ($esn = $1); + + sprintf( '%016X', $esn ); } -- 2.11.0