X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fmisc%2Fareacodes.cgi;h=afbe93e91bcdd257abad62c8660d6d490b7831c6;hp=69c9573c337f546f0072147850f082a293283330;hb=79c8be3bd0c5db42794b36bf5b5dd25addba67cb;hpb=40a7b3dc653e099f7bd0bd762b649b04c4432db2 diff --git a/httemplate/misc/areacodes.cgi b/httemplate/misc/areacodes.cgi index 69c9573c3..afbe93e91 100644 --- a/httemplate/misc/areacodes.cgi +++ b/httemplate/misc/areacodes.cgi @@ -1,5 +1,4 @@ -%# [ <% join(', ', map { qq("$_") } @areacodes) %> ] -<% objToJson(\@areacodes) %> +<% encode_json({ error => $error, areacodes => \@areacodes}) %>\ <%init> my( $state, $svcpart ) = $cgi->param('arg'); @@ -7,18 +6,26 @@ my( $state, $svcpart ) = $cgi->param('arg'); my $part_svc = qsearchs('part_svc', { 'svcpart'=>$svcpart } ); die "unknown svcpart $svcpart" unless $part_svc; -my @exports = $part_svc->part_export_did; -if ( scalar(@exports) > 1 ) { - die "more than one DID-providing export attached to svcpart $svcpart"; -} elsif ( ! @exports ) { - die "no DID providing export attached to svcpart $svcpart"; -} -my $export = $exports[0]; +my @areacodes = (); +my $error; + +if ( $state ) { -my $something = $export->get_dids('state'=>$state); + my @exports = $part_svc->part_export_did; + if ( scalar(@exports) > 1 ) { + die "more than one DID-providing export attached to svcpart $svcpart"; + } elsif ( ! @exports ) { + die "no DID providing export attached to svcpart $svcpart"; + } + my $export = $exports[0]; -#warn Dumper($something); + local $@; + local $SIG{__DIE__}; + my $something = eval { $export->get_dids('state'=>$state) }; + $error = $@; -my @areacodes = @{ $something }; + @areacodes = @{ $something } if $something; + +}