From ea1e40b8f58963e203c0bdb91f717db29f1d9c24 Mon Sep 17 00:00:00 2001 From: Flaviu Mates Date: Thu, 16 Jan 2020 12:42:50 +0200 Subject: [PATCH] TT#73550 - Fix deletion of allowed_cli when patching alias_numbers * Only reconstruct allowed_clis from alias_numbers without deleting custom introduced clis Change-Id: Ib18808d2bc5c37e1eb76b005bc43f71fe121215f --- lib/NGCP/Panel/Utils/Subscriber.pm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/NGCP/Panel/Utils/Subscriber.pm b/lib/NGCP/Panel/Utils/Subscriber.pm index b86a13889e..47ba4f27d4 100644 --- a/lib/NGCP/Panel/Utils/Subscriber.pm +++ b/lib/NGCP/Panel/Utils/Subscriber.pm @@ -893,7 +893,10 @@ sub update_subscriber_numbers { }); if(defined $acli_pref) { - $acli_pref->delete; + if (defined $alias_numbers && ref($alias_numbers) eq 'ARRAY') { + my @formatted_alias_numbers = map { $_->{e164}->{cc} . ($_->{e164}->{ac} // '') . $_->{e164}->{sn} } @$alias_numbers; + $acli_pref->search({ value => { -in => \@formatted_alias_numbers } })->delete; + } } my $cli_pref = NGCP::Panel::Utils::Preferences::get_usr_preference_rs( c => $c, attribute => 'cli', prov_subscriber => $prov_subs); @@ -1160,9 +1163,6 @@ sub update_subscriber_numbers { $prov_subs->voip_dbaliases->search({ username => { 'not in' => \@dbnums }, })->delete; - if(defined $acli_pref) { - $acli_pref->search({ value => { 'not in' => \@dbnums }})->delete; - } } return;