X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fedit%2Fsvc_acct.cgi;h=61058aeb29107d13d4a0119e5c097ce59271753e;hb=ac87fa478e6eed0d52704baf58e44860efaae67f;hp=5c2d5f4952ebcfdbc8c7a7f4459f295d721bad89;hpb=7a8c7b6f64ac14d555d866f93300e64c47b74a98;p=freeside.git diff --git a/httemplate/edit/svc_acct.cgi b/httemplate/edit/svc_acct.cgi index 5c2d5f495..61058aeb2 100755 --- a/httemplate/edit/svc_acct.cgi +++ b/httemplate/edit/svc_acct.cgi @@ -1,11 +1,11 @@ -<% include('/elements/header.html', "$action $svc account") %> +<& /elements/header.html, mt("$action [_1] account",$svc) &> -<% include('/elements/error.html') %> +<& /elements/error.html &> % if ( $cust_main ) { - <% include( '/elements/small_custview.html', $cust_main, '', 1, - popurl(2) . "view/cust_main.cgi") %> + <& /elements/small_custview.html, $cust_main, '', 1, + popurl(2) . "view/cust_main.cgi" &> % } @@ -27,28 +27,40 @@ function randomPass() { -Service # <% $svcnum ? "$svcnum" : " (NEW)" %> +% if ( $svcnum ) { +% my $svclabel = emt("Service #[_1]",$svcnum); +% $svclabel =~ s/$svcnum/$svcnum<\/B>/; +<% $svclabel %> +% } else { +<% mt("Service # (NEW)") |h %> +% } + <% ntable("#cccccc",2) %> - Service + <% mt('Service') |h %> <% $part_svc->svc %> - Username - - MAXLENGTH=<% $ulen %>> - + <% mt('Username') |h %> +% if ( $svcnum && $conf->exists('svc_acct-no_edit_username') ) { + <% $svc_acct->username() %> + +% } else { + + MAXLENGTH=<% $ulen %>> + +% } %if ( $part_svc->part_svc_column('_password')->columnflag ne 'F' ) { - Password + <% mt('Password') |h %> MAXLENGTH=<% $pmax %>> - + %}else{ @@ -59,19 +71,16 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> %my $sec_phrase = $svc_acct->sec_phrase; %if ( $conf->exists('security_phrase') % && $part_svc->part_svc_column('sec_phrase')->columnflag ne 'F' ) { -% - - Security phrase + <% mt('Security phrase') |h %> - (for forgotten passwords) + (<% mt('for forgotten passwords') |h %>) % } else { - % } % @@ -80,7 +89,6 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> %if ( $part_svc->part_svc_column('domsvc')->columnflag eq 'F' ) { % - % } else { % @@ -89,7 +97,7 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % if ( $domsvc ) { % my $svc_domain = qsearchs('svc_domain', { 'svcnum' => $domsvc, } ); % if ( $svc_domain ) { -% $svc_domain{$svc_domain->svcnum} = $svc_domain; +% $svc_domain{$svc_domain->svcnum} = $svc_domain->domain; % } else { % warn "unknown svc_domain.svcnum for svc_acct.domsvc: $domsvc"; % } @@ -100,11 +108,9 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % 'pkgnum' => $pkgnum, % ) % ); -% - - Domain + <% mt('Domain') |h %> % foreach my $svcnum ( @@ -114,7 +120,6 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % my $svc_domain = $svc_domain{$svcnum}; % - ><% $svc_domain{$svcnum} %> % } @@ -127,7 +132,7 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % if ( $communigate ) { - Aliases + <% mt('Aliases') |h %> @@ -136,25 +141,22 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % } -<% include('/elements/tr-select-svc_pbx.html', +<& /elements/tr-select-svc_pbx.html, 'curr_value' => $svc_acct->pbxsvc, 'part_svc' => $part_svc, 'cust_pkg' => $cust_pkg, - ) -%> +&> %#pop %my $popnum = $svc_acct->popnum || 0; %if ( $part_svc->part_svc_column('popnum')->columnflag eq 'F' ) { % - % } else { - - Access number + <% mt('Access number') |h %> <% FS::svc_acct_pop::popselector($popnum) %> % } @@ -167,7 +169,6 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % % if ( length($svc_acct->$xid()) ) { - <% uc($xid) %> <% $svc_acct->$xid() %> @@ -175,11 +176,9 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % } - % } else { - <% uc($xid) %> @@ -195,13 +194,12 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % && ! $svc_acct->finger ) { % - % } else { - Real Name + <% mt('Real Name') |h %> @@ -219,7 +217,7 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> - Home directory + <% mt('Home directory') |h %> % } @@ -231,13 +229,12 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % ) { % - % } else { - Shell + <% mt('Shell') |h %> % @@ -245,7 +242,6 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % foreach $etc_shell (@shells) { % - ><% $etc_shell %> % } @@ -255,284 +251,17 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % } - -% if ( $communigate -% && $part_svc->part_svc_column('cgp_type')->columnflag ne 'F' ) -% { - -% # settings - - - Mailbox type - - -% foreach my $option (qw( MultiMailbox TextMailbox MailDirMailbox -% AGrade BGrade CGrade )) { - cgp_type() ? 'SELECTED' : '' %> - ><% $option %> -% } - - - - -% } else { - -% } - - -% #false laziness w/svc_domain -% if ( $communigate -% && $part_svc->part_svc_column('cgp_accessmodes')->columnflag ne 'F' ) -% { - - - Enabled services - - <% include( '/elements/communigate_pro-accessmodes.html', - 'curr_value' => $svc_acct->cgp_accessmodes, - ) - %> - - - -% } else { - -% } - - -% if ( $part_svc->part_svc_column('quota')->columnflag eq 'F' ) { - -% } else { -% my $quota_label = $communigate ? 'Mail storage limit' : 'Quota'; - - <% $quota_label %> - - -% } - -% tie my %cgp_label, 'Tie::IxHash', -% 'file_quota' => 'File storage limit', -% 'file_maxnum' => 'Number of files limit', -% 'file_maxsize' => 'File size limit', -% ; -% -% foreach my $key (keys %cgp_label) { -% -% if ( !$communigate || $part_svc->part_svc_column($key)->columnflag eq 'F' ){ - -% } else { - - - <% $cgp_label{$key} %> - - - -% } -% } - -% if ( $communigate ) { - - <% include('/elements/tr-checkbox.html', - 'label' => 'Password recovery', - 'field' => 'password_recover', - 'curr_value' => $svc_acct->password_recover, - 'value' => 'Y', - ) - %> - - <% include('/elements/tr-select.html', - 'label' => 'Allowed mail rules', - 'field' => 'cgp_rulesallowed', - 'options' => [ '', 'No', 'Filter Only', 'All But Exec', 'Any' ], - 'labels' => { - '' => 'default (No)', #No always the default? - }, - 'curr_value' => $svc_acct->cgp_rulesallowed, - ) - %> - - <% include('/elements/tr-checkbox.html', - 'label' => 'RPOP modifications', - 'field' => 'cgp_rpopallowed', - 'curr_value' => $svc_acct->cgp_rpopallowed, - 'value' => 'Y', - ) - %> - - <% include('/elements/tr-checkbox.html', - 'label' => 'Accepts mail to "all"', - 'field' => 'cgp_mailtoall', - 'curr_value' => $svc_acct->cgp_mailtoall, - 'value' => 'Y', - ) - %> - - <% include('/elements/tr-checkbox.html', - 'label' => 'Add trailer to sent mail', - 'field' => 'cgp_addmailtrailer', - 'curr_value' => $svc_acct->cgp_addmailtrailer, - 'value' => 'Y', - ) - %> - -% #preferences - -%# false laziness w/svc_domain acct_def - - Message delete method - - -% for ( 'Move To Trash', 'Immediately', 'Mark' ) { - cgp_deletemode ? 'SELECTED' : '' %> - ><% $_ %> -% } - - - - - - On logout remove trash - - - - <% include('/elements/tr-select.html', - 'label' => 'Language', - 'field' => 'cgp_language', - 'options' => [ '', qw( English Arabic Chinese Dutch French German Hebrew Italian Japanese Portuguese Russian Slovak Spanish Thai ) ], - 'labels' => { - '' => 'default (English)', - }, - 'curr_value' => $svc_acct->cgp_language, - ) - %> - - <% include('/elements/tr-select.html', - 'label' => 'Time zone', - 'field' => 'cgp_timezone', - 'options' => [ - 'HostOS', - '(+0100) Algeria/Congo', - '(+0200) Egypt/South Africa', - '(+0300) Saudi Arabia', - '(+0400) Oman', - '(+0500) Pakistan', - '(+0600) Bangladesh', - '(+0700) Thailand/Vietnam', - '(+0800) China/Malaysia', - '(+0900) Japan/Korea', - '(+1000) Queensland', - '(+1100) Micronesia', - '(+1200) Fiji', - '(+1300) Tonga/Kiribati', - '(+1400) Christmas Islands', - '(-0100) Azores/Cape Verde', - '(-0200) Fernando de Noronha', - '(-0300) Argentina/Uruguay', - '(-0400) Venezuela/Guyana', - '(-0500) Haiti/Peru', - '(-0600) Central America', - '(-0700) Arisona', - '(-0800) Adamstown', - '(-0900) Marquesas Islands', - '(-1000) Hawaii/Tahiti', - '(-1100) Samoa', - 'Asia/Afghanistan', - 'Asia/India', - 'Asia/Iran', - 'Asia/Iraq', - 'Asia/Israel', - 'Asia/Jordan', - 'Asia/Lebanon', - 'Asia/Syria', - 'Australia/Adelaide', - 'Australia/East', - 'Australia/NorthernTerritory', - 'Europe/Central', - 'Europe/Eastern', - 'Europe/Moscow', - 'Europe/Western', - 'GMT (+0000)', - 'Newfoundland', - 'NewZealand/Auckland', - 'NorthAmerica/Alaska', - 'NorthAmerica/Atlantic', - 'NorthAmerica/Central', - 'NorthAmerica/Eastern', - 'NorthAmerica/Mountain', - 'NorthAmerica/Pacific', - 'Russia/Ekaterinburg', - 'Russia/Irkutsk', - 'Russia/Kamchatka', - 'Russia/Krasnoyarsk', - 'Russia/Magadan', - 'Russia/Novosibirsk', - 'Russia/Vladivostok', - 'Russia/Yakutsk', - 'SouthAmerica/Brasil', - 'SouthAmerica/Chile', - 'SouthAmerica/Paraguay', - ], - 'labels' => { - '' => 'default (HostOS)', - }, - 'curr_value' => $svc_acct->cgp_timezone, - ) - %> - - <% include('/elements/tr-select.html', - 'label' => 'Layout', - 'field' => 'cgp_skinname', - 'options' => [ '', '***', 'GoldFleece', 'Skin2' ], - 'labels' => { - '' => 'default (***)', - }, - 'curr_value' => $svc_acct->cgp_skinname, - ) - %> - - <% include('/elements/tr-select.html', - 'label' => 'Pronto style', - 'field' => 'cgp_prontoskinname', - 'options' => [ '', 'Pronto', 'Pronto-darkflame', 'Pronto-steel', 'Pronto-twilight', ], - - 'curr_value' => $svc_acct->cgp_prontoskinname, - ) - %> - - <% include('/elements/tr-select.html', - 'label' => 'Send read receipts', - 'field' => 'cgp_sendmdnmode', - 'options' => [ '', 'Never', 'Manually', 'Automatically' ], - 'labels' => { - '' => 'default (Automatically)', - }, - 'curr_value' => $svc_acct->cgp_language, - ) - %> - -%#XXX vacation message, redirect all mail, mail rules - -% } else { - -% for (qw( password_recover cgp_rulesallowed cgp_rpopallowed cgp_mailtoall -% cgp_addmailtrailer -% cgp_deletemode cgp_emptytrash cgp_language cgp_timezone -% cgp_skinname cgp_sendmdnmode -% ) ) { - - -% } - -% } - +<& svc_acct/communigate.html, + 'svc_acct' => $svc_acct, + 'part_svc' => $part_svc, + 'communigate' => $communigate, +&> % if ( $part_svc->part_svc_column('slipip')->columnflag =~ /^[FA]$/ ) { % } else { - IP + <% mt('IP') |h %> % } @@ -546,12 +275,12 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % my $tf = $uf . "_threshold"; % if ( $curuser->access_right('Edit usage') ) { - <% $label{$uf} %> remaining - (blank disables) + <% mt("[_1] remaining",$label{$uf}) |h %> + (<% mt('blank disables') |h %>) - <% $label{$uf} %> threshold - (blank disables) + <% mt("[_1] threshold",$label{$uf}) |h %> + (<% mt('blank disables') |h %>) % }else{ @@ -565,11 +294,9 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % % if ( $part_svc->part_svc_column($r)->columnflag =~ /^[FA]$/ ) { - % } else { - <% $FS::raddb::attrib{$a} %> @@ -578,39 +305,48 @@ Service # <% $svcnum ? "$svcnum" : " (NEW)" %> % } - - RADIUS groups -% if ( $part_svc->part_svc_column('usergroup')->columnflag eq 'F' ) { - - - <% join('', @groups) %> + <% mt('RADIUS groups') |h %> +% if ( $part_svc_usergroup->columnflag eq 'F' ) { + <% join('', @groupnames) %> % } else { - - - <% FS::svc_acct::radius_usergroup_selector( \@groups ) %> +% my $radius_group_selected = ''; +% if ( $svc_acct->svcnum ) { +% $radius_group_selected = join(',',$svc_acct->radius_groups('NUMBERS')); +% } +% elsif ( !$svc_acct->svcnum && $part_svc_usergroup->columnflag eq 'D' ) { +% $radius_group_selected = $part_svc_usergroup->columnvalue; +% } + <& /elements/select-radius_group.html, + curr_value => $radius_group_selected, + element_name => 'radius_usergroup', + &> + % } - % foreach my $field ($svc_acct->virtual_fields) { % # If the flag is X, it won't even show up in $svc_acct->virtual_fields. % if ( $part_svc->part_svc_column($field)->columnflag ne 'F' ) { - <% $svc_acct->pvf($field)->widget('HTML', 'edit', $svc_acct->getfield($field)) %> % } % } - +% if ( $captcha_url ) { + +<% mt('Enter the word shown above:') |h %> + +% } + -<% include('/elements/footer.html') %> +<& /elements/footer.html &> <%init> @@ -711,9 +447,15 @@ unless ( $svcnum || $cgi->param('error') ) { #adding } +my $part_svc_usergroup = $part_svc->part_svc_column('usergroup'); #fixed radius groups always override & display -if ( $part_svc->part_svc_column('usergroup')->columnflag eq 'F' ) { - @groups = split(',', $part_svc->part_svc_column('usergroup')->columnvalue); +my @groupnames; # only used for display of Fixed RADIUS groups +if ( $part_svc_usergroup->columnflag eq 'F' ) { + @groups = split(',',$part_svc_usergroup->columnvalue); + @groupnames = map { $_->long_description } + qsearch({ 'table' => 'radius_group', + 'extra_sql' => "where groupnum in (".$part_svc_usergroup->columnvalue.")", + }) if length($part_svc_usergroup->columnvalue); } my $action = $svcnum ? 'Edit' : 'Add'; @@ -751,4 +493,18 @@ sub max { (sort(@_))[-1] } +my $captcha_url; +my ($export_google) = $part_svc->part_export('acct_google'); +if ( $export_google ) { + my $error = $export_google->auth_error; + if ( $error ) { + if ( $error->{'captcha_url'} ) { + $captcha_url = $error->{'captcha_url'}; + } + else { + $cgi->param('error', $error->{'message'}); + } + } #if $error +} + %init>