diff --git a/lib/NGCP/Panel/Controller/Customer.pm b/lib/NGCP/Panel/Controller/Customer.pm index 9d73b1b962..2c0c28b391 100644 --- a/lib/NGCP/Panel/Controller/Customer.pm +++ b/lib/NGCP/Panel/Controller/Customer.pm @@ -157,7 +157,8 @@ sub base :Chained('list_customer') :PathPart('') :CaptureArgs(1) { my $subs = NGCP::Panel::Utils::Subscriber::get_custom_subscriber_struct( c => $c, - contract => $contract->first + contract => $contract->first, + show_locked => 1, ); $c->stash->{subscribers} = $subs->{subscribers}; $c->stash->{pbx_groups} = $subs->{pbx_groups}; diff --git a/lib/NGCP/Panel/Controller/Subscriber.pm b/lib/NGCP/Panel/Controller/Subscriber.pm index a04df94a9a..5dc05a0c58 100644 --- a/lib/NGCP/Panel/Controller/Subscriber.pm +++ b/lib/NGCP/Panel/Controller/Subscriber.pm @@ -1622,7 +1622,8 @@ sub edit_master :Chained('master') :PathPart('edit') :Args(0) { if($pbx_ext) { my $subs = NGCP::Panel::Utils::Subscriber::get_custom_subscriber_struct( c => $c, - contract => $subscriber->contract + contract => $subscriber->contract, + show_locked => 0, ); my $admin_subscribers = NGCP::Panel::Utils::Subscriber::get_admin_subscribers( voip_subscribers => $subs->{subscribers} diff --git a/lib/NGCP/Panel/Utils/Subscriber.pm b/lib/NGCP/Panel/Utils/Subscriber.pm index ec2983fa6c..200a535f80 100644 --- a/lib/NGCP/Panel/Utils/Subscriber.pm +++ b/lib/NGCP/Panel/Utils/Subscriber.pm @@ -240,7 +240,13 @@ sub get_custom_subscriber_struct { my @subscribers = (); my @pbx_groups = (); - foreach my $s($contract->voip_subscribers->search_rs({ status => 'active' })->all) { + my $voip_sub_rs = $contract->voip_subscribers; + if($params{show_locked}) { + $voip_sub_rs = $voip_sub_rs->search_rs({ status => { -in => [ 'active', 'locked' ] } }); + } else { + $voip_sub_rs = $voip_sub_rs->search_rs({ status => 'active' }); + } + foreach my $s($voip_sub_rs->all) { my $sub = { $s->get_columns }; if($c->config->{features}->{cloudpbx}) { $sub->{voip_pbx_group} = { $s->provisioning_voip_subscriber->voip_pbx_group->get_columns }