|
|
|
|
@ -620,6 +620,15 @@ sub rules_create :Chained('rules_list') :PathPart('create') :Args(0) {
|
|
|
|
|
if($posted && $form->validated) {
|
|
|
|
|
try {
|
|
|
|
|
$form->values->{callee_prefix} //= '';
|
|
|
|
|
$form->values->{caller_pattern} //= '';
|
|
|
|
|
$form->values->{callee_pattern} //= '';
|
|
|
|
|
my $dup_item = $c->model('DB')->resultset('voip_peer_rules')->find({
|
|
|
|
|
group_id => $c->stash->{group_result}->id,
|
|
|
|
|
callee_pattern => $form->values->{callee_pattern},
|
|
|
|
|
caller_pattern => $form->values->{caller_pattern},
|
|
|
|
|
callee_prefix => $form->values->{callee_prefix},
|
|
|
|
|
});
|
|
|
|
|
die("peering rule already exists") if $dup_item;
|
|
|
|
|
$c->stash->{group_result}->voip_peer_rules->create($form->values);
|
|
|
|
|
NGCP::Panel::Utils::Peering::_sip_lcr_reload(c => $c);
|
|
|
|
|
NGCP::Panel::Utils::Message::info(
|
|
|
|
|
@ -694,7 +703,16 @@ sub rules_edit :Chained('rules_base') :PathPart('edit') :Args(0) {
|
|
|
|
|
if($posted && $form->validated) {
|
|
|
|
|
try {
|
|
|
|
|
$form->values->{callee_prefix} //= '';
|
|
|
|
|
$form->values->{caller_pattern} //= '';
|
|
|
|
|
$form->values->{callee_pattern} //= '';
|
|
|
|
|
$form->values->{group_id} = $form->values->{group}{id};
|
|
|
|
|
my $dup_item = $c->model('DB')->resultset('voip_peer_rules')->find({
|
|
|
|
|
group_id => $form->values->{group_id},
|
|
|
|
|
callee_pattern => $form->values->{callee_pattern},
|
|
|
|
|
caller_pattern => $form->values->{caller_pattern},
|
|
|
|
|
callee_prefix => $form->values->{callee_prefix},
|
|
|
|
|
});
|
|
|
|
|
die("peering rule already exists") if ($dup_item && $dup_item->id != $c->stash->{rule_result}->id);
|
|
|
|
|
$c->stash->{rule_result}->update($form->values);
|
|
|
|
|
NGCP::Panel::Utils::Peering::_sip_lcr_reload(c => $c);
|
|
|
|
|
NGCP::Panel::Utils::Message::info(
|
|
|
|
|
|