diff --git a/lib/admin/Controller/subscriber.pm b/lib/admin/Controller/subscriber.pm index 325ab30..f6c4c4e 100644 --- a/lib/admin/Controller/subscriber.pm +++ b/lib/admin/Controller/subscriber.pm @@ -205,7 +205,7 @@ sub update_subscriber : Local { my $checkresult; $c->session->{subscriber}{account_id} = $c->request->params->{account_id}; - $c->session->{subscriber}{username} = $settings{webusername} = $c->request->params->{username}; + $c->session->{subscriber}{username} = $c->request->params->{username}; return unless $c->model('Provisioning')->call_prov( $c, 'voip', 'check_username', $c->session->{subscriber}{username}, \$checkresult ); @@ -235,6 +235,18 @@ sub update_subscriber : Local { } } + $settings{webusername} = $c->request->params->{webusername}; + if(length $settings{webusername}) { + my $checkresult; + return unless $c->model('Provisioning')->call_prov( $c, 'voip', 'check_username', + $settings{webusername}, \$checkresult + ); + $messages{webusername} = 'Client.Syntax.MalformedUsername' unless($checkresult); + } else { + $settings{webusername} = $c->session->{subscriber}{username}; + } + + my $cc = $c->request->params->{cc}; my $ac = $c->request->params->{ac}; my $sn = $c->request->params->{sn}; diff --git a/root/tt/subscriber_detail.tt b/root/tt/subscriber_detail.tt index 0b4dd04..6a2b079 100644 --- a/root/tt/subscriber_detail.tt +++ b/root/tt/subscriber_detail.tt @@ -82,7 +82,19 @@ -