diff --git a/lib/admin/Controller/subscriber.pm b/lib/admin/Controller/subscriber.pm index ebb7be6..4b5471c 100644 --- a/lib/admin/Controller/subscriber.pm +++ b/lib/admin/Controller/subscriber.pm @@ -721,24 +721,7 @@ sub preferences : Local { # managed separately next if $$pref{preference} eq 'lock'; - if($$pref{preference} eq 'cfu' - or $$pref{preference} eq 'cfb' - or $$pref{preference} eq 'cft' - or $$pref{preference} eq 'cfna') - { - if(defined $$preferences{$$pref{preference}} and length $$preferences{$$pref{preference}}) { - my $vbdom = $c->config->{voicebox_domain}; - my $fmdom = $c->config->{fax2mail_domain}; - my $confdom = $c->config->{conference_domain}; - if($$preferences{$$pref{preference}} =~ /\@$vbdom$/) { - $$preferences{$$pref{preference}} = 'voicebox'; - } elsif($$preferences{$$pref{preference}} =~ /\@$fmdom$/) { - $$preferences{$$pref{preference}} = 'fax2mail'; - } elsif($$preferences{$$pref{preference}} =~ /\@$confdom$/) { - $$preferences{$$pref{preference}} = 'conference'; - } - } - } elsif(!$c->stash->{ncos_levels} and ($$pref{preference} eq 'ncos' or $$pref{preference} eq 'adm_ncos')) { + if(!$c->stash->{ncos_levels} and ($$pref{preference} eq 'ncos' or $$pref{preference} eq 'adm_ncos')) { my $ncoslvl; return unless $c->model('Provisioning')->call_prov( $c, 'billing', 'get_ncos_levels', undef, @@ -835,48 +818,7 @@ sub update_preferences : Local { delete $$preferences{$$db_pref{preference}}, next if $$db_pref{read_only}; - if($$db_pref{preference} eq 'cfu' - or $$db_pref{preference} eq 'cfb' - or $$db_pref{preference} eq 'cft' - or $$db_pref{preference} eq 'cfna') - { - my $vbdom = $c->config->{voicebox_domain}; - my $fmdom = $c->config->{fax2mail_domain}; - my $confdom = $c->config->{conference_domain}; - - my $fwtype = $$db_pref{preference}; - my $fw_target_select = $c->request->params->{$fwtype .'_target'} || 'disable'; - - my $fw_target; - if($fw_target_select eq 'sipuri') { - $fw_target = $c->request->params->{$fwtype .'_sipuri'}; - - # normalize, so we can do some checks. - $fw_target =~ s/^sip://i; - - if($fw_target =~ /^\+?\d+$/) { - $fw_target = admin::Utils::get_qualified_number_for_subscriber($c, $fw_target); - my $checkresult; - return unless $c->model('Provisioning')->call_prov( $c, 'voip', 'check_E164_number', $fw_target, \$checkresult); - $messages{$fwtype} = 'Client.Voip.MalformedNumber' - unless $checkresult; - } elsif($fw_target =~ /^[a-z0-9&=+\$,;?\/_.!~*'()-]+\@[a-z0-9.-]+(:\d{1,5})?$/i) { - $fw_target = 'sip:'. lc $fw_target; - } elsif($fw_target =~ /^[a-z0-9&=+\$,;?\/_.!~*'()-]+$/) { - $fw_target = 'sip:'. lc($fw_target) .'@'. $$subscriber{domain}; - } else { - $messages{$fwtype} = 'Client.Voip.MalformedTarget'; - $fw_target = $c->request->params->{$fwtype .'_sipuri'}; - } - } elsif($fw_target_select eq 'voicebox') { - $fw_target = 'sip:vmu'.$$subscriber{cc}.$$subscriber{ac}.$$subscriber{sn}."\@$vbdom"; - } elsif($fw_target_select eq 'fax2mail') { - $fw_target = 'sip:'.$$subscriber{cc}.$$subscriber{ac}.$$subscriber{sn}."\@$fmdom"; - } elsif($fw_target_select eq 'conference') { - $fw_target = 'sip:conf='.$$subscriber{cc}.$$subscriber{ac}.$$subscriber{sn}."\@$confdom"; - } - $$preferences{$fwtype} = $fw_target; - } elsif($$db_pref{preference} eq 'cli') { + if($$db_pref{preference} eq 'cli') { $$preferences{cli} = $c->request->params->{cli} or undef; if(defined $$preferences{cli} and $$preferences{cli} =~ /^\+?\d+$/) { $$preferences{cli} = admin::Utils::get_qualified_number_for_subscriber($c, $$preferences{cli}); diff --git a/root/tt/subscriber_preferences.tt b/root/tt/subscriber_preferences.tt index 3c95931..f2c77f2 100644 --- a/root/tt/subscriber_preferences.tt +++ b/root/tt/subscriber_preferences.tt @@ -45,58 +45,6 @@ - [% ELSIF preference.key == "cfu" - || preference.key == "cfb" - || preference.key == "cft" - || preference.key == "cfna" %] -
  • -
    [% preference.key %]:
    -
    -
    - [% IF edit_preferences %] - - -
    - [% IF Catalyst.config.voicemail_features %] - - -
    - [% END %] - [% IF Catalyst.config.fax_features %] - - -
    - [% END %] - [% IF Catalyst.config.conference_features %] - - -
    - [% END %] - - - - [% ELSE %] - [% IF preference.value == "voicebox" %] - Voicebox - [% ELSIF preference.value == "fax2mail" %] - Fax2Mail - [% ELSIF preference.value == "conference" %] - Conference room - [% ELSE %] - - [% END %] - [% END %] -
    -
  • - [% IF preference.value.error %]
    [% preference.value.error %]
    [% END %] [% ELSIF preference.key == "ncos" || preference.key == "adm_ncos"%]
  • [% preference.key %]: