MT#5241 Update primary number on group ext change

Change-Id: I5d23cb1c262a170b1e2d2b2c5ecf61fc22189ff8
changes/76/676/1
Andreas Granig 11 years ago
parent 2b563f1730
commit 30d207508e

@ -1036,6 +1036,9 @@ sub pbx_group_base :Chained('base') :PathPart('pbx/group') :CaptureArgs(1) {
$c->uri_for_action('/customer/details', [$c->stash->{contract}->id])
);
}
$c->stash->{pilot} = $c->stash->{subscribers}->search({
'provisioning_voip_subscriber.is_pbx_pilot' => 1,
})->first;
$c->stash(
pbx_group => $group,
@ -1065,6 +1068,7 @@ sub pbx_group_edit :Chained('pbx_group_base') :PathPart('edit') :Args(0) {
try {
my $schema = $c->model('DB');
$schema->txn_do(sub {
my $old_extension = $c->stash->{pbx_group}->provisioning_voip_subscriber->pbx_extension;
$c->stash->{pbx_group}->provisioning_voip_subscriber->update($form->params);
NGCP::Panel::Utils::Subscriber::update_subscriber_pbx_policy(
c => $c,
@ -1074,6 +1078,23 @@ sub pbx_group_edit :Chained('pbx_group_base') :PathPart('edit') :Args(0) {
cloud_pbx_hunt_timeout => $form->params->{pbx_hunt_timeout},
}
);
if(defined $form->params->{pbx_extension} &&
$form->params->{pbx_extension} ne $old_extension) {
my $sub = $c->stash->{pbx_group};
my $base_number = $c->stash->{pilot}->primary_number;
my $e164 = {
cc => $sub->primary_number->cc,
ac => $sub->primary_number->ac,
sn => $base_number->sn . $form->params->{pbx_extension},
};
NGCP::Panel::Utils::Subscriber::update_subscriber_numbers(
c => $c,
schema => $schema,
subscriber_id => $sub->id,
reseller_id => $sub->contract->contact->reseller_id,
primary_number => $e164,
);
}
});
NGCP::Panel::Utils::Message->info(
c => $c,

Loading…
Cancel
Save