diff --git a/lib/NGCP/Panel/Controller/Subscriber.pm b/lib/NGCP/Panel/Controller/Subscriber.pm index e81a2b94bb..7cec38d570 100644 --- a/lib/NGCP/Panel/Controller/Subscriber.pm +++ b/lib/NGCP/Panel/Controller/Subscriber.pm @@ -378,15 +378,27 @@ sub webfax_send :Chained('base') :PathPart('webfax/send') :Args(0) { sub webfax_ajax :Chained('base') :PathPart('webfax/ajax') :Args(0) { my ($self, $c) = @_; - my $s = $c->stash->{subscriber}->provisioning_voip_subscriber; - my $kam_subscriber = $c->model('DB')->resultset('subscriber')->find({ - uuid => $s->uuid - }); + my $subscriber = $c->stash->{subscriber}; my $fax_rs = $c->model('DB')->resultset('fax_journal')->search({ - subscriber_id => $kam_subscriber->id, + 'subscriber.uuid' => $subscriber->uuid, + },{ + join => 'subscriber',#kamailio.subscriber is meant here }); - NGCP::Panel::Utils::Datatables::process($c, $fax_rs, $c->stash->{fax_dt_columns}); + NGCP::Panel::Utils::Datatables::process($c, $fax_rs, $c->stash->{fax_dt_columns}, + sub { + my ($result) = @_; + my %data = (); + my $destination = {destination => $result->peer_number}; + $data{peer_number} = NGCP::Panel::Utils::Subscriber::destination_as_string( + $c, + $destination, + $subscriber, + ('in' eq $result->direction) ? 'caller_in' : 'callee_out' + ); + return %data; + }, + ); $c->detach( $c->view("JSON") ); } diff --git a/lib/NGCP/Panel/Utils/Subscriber.pm b/lib/NGCP/Panel/Utils/Subscriber.pm index 8f20faa6e4..ee7adcfaf4 100644 --- a/lib/NGCP/Panel/Utils/Subscriber.pm +++ b/lib/NGCP/Panel/Utils/Subscriber.pm @@ -58,7 +58,7 @@ sub period_as_string { } sub destination_as_string { - my ($c, $destination) = @_; + my ($c, $destination, $subscriber, $direction) = @_; my $dest = $destination->{destination}; if($dest =~ /\@voicebox\.local$/) { @@ -80,12 +80,13 @@ sub destination_as_string { } else { my $d = $dest; $d =~ s/^sips?://; - my $sub = $c->stash->{subscriber}; + my $sub = $subscriber // $c->stash->{subscriber}; + $direction //= 'caller_out'; if($sub && ($c->user->roles eq "subscriberadmin" || $c->user->roles eq "subscriber")) { my ($user, $domain) = split(/\@/, $d); $domain //= $sub->domain->domain; $user = NGCP::Panel::Utils::Subscriber::apply_rewrite( - c => $c, subscriber => $sub, number => $user, direction => 'caller_out' + c => $c, subscriber => $sub, number => $user, direction => $direction ); if($domain eq $sub->domain->domain) { $d = $user;