diff options
Diffstat (limited to 'httemplate/view/svc_acct/basics.html')
| -rw-r--r-- | httemplate/view/svc_acct/basics.html | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/httemplate/view/svc_acct/basics.html b/httemplate/view/svc_acct/basics.html new file mode 100644 index 000000000..8f180b648 --- /dev/null +++ b/httemplate/view/svc_acct/basics.html @@ -0,0 +1,144 @@ +<% &ntable("#cccccc") %><TR><TD><% &ntable("#cccccc",2) %> + +<& /view/elements/tr.html, label=>mt('Service'), value=>$part_svc->svc &> +<& /view/elements/tr.html, label=>mt('Username'), value=>$svc_acct->username &> +<& /view/elements/tr.html, label=>mt('Domain'), value=>$domain &> + +% if ( $opt{'communigate'} ) { + <& /view/elements/tr.html, label=>mt('Aliases'), value=>$svc_acct->cgp_aliases &> +%} + +% if ( $svc_acct->pbxsvc ) { + <& /view/elements/tr.html, label=>mt('PBX'), value=>$svc_acct->pbx_title &> +%} + +% my $show_pw = ''; +% my $password = $svc_acct->get_cleartext_password; +% if ( $password =~ /^\*\w+\* (.*)$/ ) { +% $password = $1; +% $show_pw .= '<I>('. mt('login disabled') .')</I> '; +% } +% if ( ! $password +% && $svc_acct->_password_encryption ne 'plain' +% && $svc_acct->_password +% ) +% { +% $show_pw .= '<I>('. uc($svc_acct->_password_encryption). ' '.mt('encrypted').')</I>'; +% } elsif ( $conf->exists('showpasswords') ) { +% $show_pw .= '<PRE>'. encode_entities($password). '</PRE>'; +% } else { +% $show_pw .= '<I>('. mt('hidden') .')</I>'; +% } +% $password = ''; +<& /view/elements/tr.html, label=>mt('Password'), value=>$show_pw &> + + +% if ( $conf->exists('security_phrase') ) { + <& /view/elements/tr.html, label=>mt('Security phrase'), value=>$svc_acct->sec_phrase &> +% } + +% if ( $svc_acct->popnum ) { +% my $svc_acct_pop = qsearchs('svc_acct_pop',{'popnum'=>$svc_acct->popnum}); + <& /view/elements/tr.html, label=>mt('Access number'), value=>$svc_acct_pop->text &> +% } + +% if ( $svc_acct->sectornum && $conf->exists('svc_acct-tower_sector') ) { +% my $tower_sector = $svc_acct->tower_sector; +% my $link = $tower_sector->ip_addr +% ? '<A HREF="http://'. $tower_sector->ip_addr. '">' +% : ''; + <& /view/elements/tr.html, + label => mt('Tower sector'), + value => $link. $tower_sector->description. ($link ? '</A>' : ''), + &> +% } + +% if ($svc_acct->uid ne '') { + <& /view/elements/tr.html, label=>mt('UID'), value=>$svc_acct->uid &> +% } + +% if ($svc_acct->gid ne '') { + <& /view/elements/tr.html, label=>mt('GID'), value=>$svc_acct->gid &> +% } + +% if ($svc_acct->finger ne '') { + <& /view/elements/tr.html, label=>mt('Real Name'), value=>$svc_acct->finger &> +% } + +% if ($svc_acct->dir ne '') { + <& /view/elements/tr.html, label=>mt('Home directory'), value=>$svc_acct->dir &> +% } + +% if ($svc_acct->shell ne '') { + <& /view/elements/tr.html, label=>mt('Shell'), value=>$svc_acct->shell &> +% } + +% if ($svc_acct->quota ne '' && ! $opt{'communigate'} ) { + + <& /view/elements/tr.html, label=>mt('Quota'), value=>$svc_acct->quota &> + +% } elsif ( $opt{'communigate'} ) { + + <& communigate.html, %opt &> + +% } + +% if ($svc_acct->slipip) { + <& /view/elements/tr.html, + label=>mt('IP address'), + value=> ( $svc_acct->slipip eq "0.0.0.0" || $svc_acct->slipip eq '0e0' ) + ? "<I>(".mt('Dynamic').")</I>" + : $svc_acct->slipip. ' '. + include('/elements/popup_link-ping.html', + 'ip'=>$svc_acct->slipip, + ) + &> +% } + +<& usage.html, 'svc_acct' => $svc_acct &> + +% foreach my $attribute ( grep /^radius_/, $svc_acct->fields ) { +% $attribute =~ /^radius_(.*)$/; +% my $pattribute = $FS::raddb::attrib{$1}; + <& /view/elements/tr.html, label=>mt("Radius (reply) [_1]",$pattribute), + value=>$svc_acct->getfield($attribute) + &> +% } + +% foreach my $attribute ( grep /^rc_/, $svc_acct->fields ) { +% $attribute =~ /^rc_(.*)$/; +% my $pattribute = $FS::raddb::attrib{$1}; + <& /view/elements/tr.html, label=>mt("Radius (check) [_1]",$pattribute), + value=>$svc_acct->getfield($attribute) + &> +% } + +<& /view/elements/tr.html, label=>mt('RADIUS groups'), + value=>join('<BR>', $svc_acct->radius_groups('long_description')) &> + +%# Can this be abstracted further? Maybe a library function like +%# widget('HTML', 'view', $svc_acct) ? It would definitely make UI +%# style management easier. +% foreach (sort { $a cmp $b } $svc_acct->virtual_fields) { + <% $svc_acct->pvf($_)->widget('HTML', 'view', $svc_acct->getfield($_)) %> +% } + +</TABLE></TD></TR></TABLE> +<%init> + +my %opt = @_; + +my $conf = new FS::Conf; + +my $svc_acct = $opt{'svc_acct'}; +my $part_svc = $opt{'part_svc'}; + +die 'Empty domsvc for svc_acct.svcnum '. $svc_acct->svcnum + unless $svc_acct->domsvc; +my $svc_domain = qsearchs('svc_domain', { 'svcnum' => $svc_acct->domsvc } ); +die 'Unknown domain (domsvc '. $svc_acct->domsvc. + ' for svc_acct.svcnum '. $svc_acct->svcnum. ')' + unless $svc_domain; +my $domain = $svc_domain->domain; + +</%init> |
