From 343befcb41d5ab76173645ceb8ac235ca7b92d35 Mon Sep 17 00:00:00 2001 From: mark Date: Wed, 22 Sep 2010 19:35:18 +0000 Subject: CIA and Infinite Conferencing cdr formats, RT#8788 --- httemplate/search/cdr.html | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) (limited to 'httemplate') diff --git a/httemplate/search/cdr.html b/httemplate/search/cdr.html index 00aee9e..702dc1b 100644 --- a/httemplate/search/cdr.html +++ b/httemplate/search/cdr.html @@ -55,6 +55,8 @@ die "access denied" my $edit_data = $FS::CurrentUser::CurrentUser->access_right('Edit rating data'); +my $conf = new FS::Conf; + my $areboxes = 0; my $title = 'Call Detail Records'; @@ -148,14 +150,21 @@ foreach my $param ( grep /^termpart\d+status$/, $cgi->param ) { # src/dest/charged_party ### -if ( $cgi->param('src') =~ /^\s*([\d\-\+\ ]+)\s*$/ ) { - ( my $src = $1 ) =~ s/\D//g; +my $phonenum = qr/^\s*([\d\-\+\ ]+)\s*$/; +my $x = qr/\D/; +if ( $conf->exists('svc_phone-allow_alpha_phonenum') ) { + $phonenum = qr/^\s*([\d\-\+\ A-Za-z]+)\s*$/; + $x = qr/[^\dA-Za-z]/; +} + +if ( $cgi->param('src') =~ $phonenum ) { + ( my $src = $1 ) =~ s/$x//g; $hashref->{'src'} = $src; push @search, "src = '$src'"; } -if ( $cgi->param('dst') =~ /^\s*([\d\-\+ ]+)\s*$/ ) { - ( my $dst = $1 ) =~ s/\D//g; +if ( $cgi->param('dst') =~ $phonenum ) { + ( my $dst = $1 ) =~ s/$x//g; $hashref->{'dst'} = $dst; push @search, "dst = '$dst'"; } @@ -166,8 +175,8 @@ if ( $cgi->param('dcontext') =~ /^\s*(.+)\s*$/ ) { push @search, "dcontext = '$dcontext'"; } -if ( $cgi->param('charged_party') =~ /^\s*([\d\-\+\ ]+)\s*$/ ) { - ( my $charged_party = $1 ) =~ s/\D//g; +if ( $cgi->param('charged_party') =~ $phonenum ) { + ( my $charged_party = $1 ) =~ s/$x//g; #$hashref->{'charged_party'} = $charged_party; #push @search, "charged_party = '$charged_party'"; #XXX countrycode @@ -178,8 +187,8 @@ if ( $cgi->param('charged_party') =~ /^\s*([\d\-\+\ ]+)\s*$/ ) { push @qsearch, $search; } -if ( $cgi->param('charged_party_or_src') =~ /^\s*([\d\-\+\ ]+)\s*$/ ) { - ( my $charged_party = $1 ) =~ s/\D//g; +if ( $cgi->param('charged_party_or_src') =~ $phonenum ) { + ( my $charged_party = $1 ) =~ s/$x//g; #$hashref->{'charged_party'} = $charged_party; #push @search, "charged_party = '$charged_party'"; #XXX countrycode @@ -191,7 +200,6 @@ if ( $cgi->param('charged_party_or_src') =~ /^\s*([\d\-\+\ ]+)\s*$/ ) { push @qsearch, $search; } - ### # cdrbatchnum (or legacy cdrbatch) ### -- cgit v1.1