X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fbrowse%2Faccess_user.html;h=8eb3e330aa957180f81d412b983c2f994212acc3;hp=05384289a8f572b2ee3cf4af07b28fdb33ca4127;hb=15777da47bab33e8f0021e6dd9aa6b434fa9be30;hpb=3ce7691203a7737406bf2d4442f7fd84b81f847e diff --git a/httemplate/browse/access_user.html b/httemplate/browse/access_user.html index 05384289a..8eb3e330a 100644 --- a/httemplate/browse/access_user.html +++ b/httemplate/browse/access_user.html @@ -1,83 +1,3 @@ -% -% -%my $html_init = -% "Internal users have access to the back-office interface. Typically, this is your employees and contractors, but in a VISP setup, you can also add accounts for your reseller's employees. It is highly recommended to add a separate account for each person rather than using role accounts.

". -% qq!Add an internal user

!; -% -%#false laziness w/part_pkg.cgi -%my %search = (); -%my $search = ''; -%unless ( $cgi->param('showdisabled') ) { -% %search = ( 'disabled' => '' ); -% $search = "( disabled = '' OR disabled IS NULL )"; -%} -% -%#false laziness w/access_group.html & agent_type.cgi -%my $groups_sub = sub { -% my $access_user = shift; -% -% [ map { -% my $access_usergroup = $_; -% my $access_group = $access_usergroup->access_group; -% [ -% { -% 'data' => $access_group->groupname, -% 'align' => 'left', -% 'link' => -% $p. 'edit/access_group.html?'. $access_usergroup->groupnum, -% }, -% ]; -% } -% grep { $_->access_group # and ! $_->access_group->disabled -% } -% $access_user->access_usergroup, -% -% ]; -% -%}; -% -%my $posttotal; -%if ( $cgi->param('showdisabled') ) { -% $cgi->param('showdisabled', 0); -% $posttotal = '( hide disabled users )'; -% $cgi->param('showdisabled', 1); -%} else { -% $cgi->param('showdisabled', 1); -% $posttotal = '( show disabled users )'; -% $cgi->param('showdisabled', 0); -%} -% -%my $count_query = 'SELECT COUNT(*) FROM access_user'; -%$count_query .= " WHERE $search" -% if $search; -% -%my $link = [ $p.'edit/access_user.html?', 'usernum' ]; -% -%my @header = ( '#', 'Username' ); -%my @fields = ( 'usernum', 'username' ); -%my $align = 'rl'; -%my @links = ( $link, $link ); -%my @style = ( '', '' ); -% -%#false laziness w/part_pkg.cgi -%#unless ( $cgi->param('showdisabled') ) { #its been reversed already -%if ( $cgi->param('showdisabled') ) { #its been reversed already -% push @header, 'Status'; -% push @fields, sub { shift->disabled -% ? 'DISABLED' -% : 'Active' -% }; -% push @links, ''; -% $align .= 'c'; -% push @style, 'b'; -%} -% -%push @header, 'Full name', 'Groups'; -%push @fields, 'name', $groups_sub; -%push @links, $link, ''; -%$align .= 'll'; -% -% <% include( 'elements/browse.html', 'title' => 'Internal Users', 'menubar' => [ #'Main menu' => $p, @@ -97,3 +17,86 @@ 'style' => \@style, ) %> +<%init> + +die "access denied" + unless $FS::CurrentUser::CurrentUser->access_right('Configuration'); + +my $html_init = + "Internal users have access to the back-office interface. Typically, this is your employees and contractors, but in a VISP setup, you can also add accounts for your reseller's employees. It is highly recommended to add a separate account for each person rather than using role accounts.

". + qq!Add an internal user

!; + +#false laziness w/part_pkg.cgi +my %search = (); +my $search = ''; +unless ( $cgi->param('showdisabled') ) { + %search = ( 'disabled' => '' ); + $search = "( disabled = '' OR disabled IS NULL )"; +} + +#false laziness w/access_group.html & agent_type.cgi +my $groups_sub = sub { + my $access_user = shift; + + [ map { + my $access_usergroup = $_; + my $access_group = $access_usergroup->access_group; + [ + { + 'data' => $access_group->groupname, + 'align' => 'left', + 'link' => + $p. 'edit/access_group.html?'. $access_usergroup->groupnum, + }, + ]; + } + grep { $_->access_group # and ! $_->access_group->disabled + } + $access_user->access_usergroup, + + ]; + +}; + +my $posttotal; +if ( $cgi->param('showdisabled') ) { + $cgi->param('showdisabled', 0); + $posttotal = '( hide disabled users )'; + $cgi->param('showdisabled', 1); +} else { + $cgi->param('showdisabled', 1); + $posttotal = '( show disabled users )'; + $cgi->param('showdisabled', 0); +} + +my $count_query = 'SELECT COUNT(*) FROM access_user'; +$count_query .= " WHERE $search" + if $search; + +my $link = [ $p.'edit/access_user.html?', 'usernum' ]; + +my @header = ( '#', 'Username' ); +my @fields = ( 'usernum', 'username' ); +my $align = 'rl'; +my @links = ( $link, $link ); +my @style = ( '', '' ); + +#false laziness w/part_pkg.cgi +#unless ( $cgi->param('showdisabled') ) { #its been reversed already +if ( $cgi->param('showdisabled') ) { #its been reversed already + push @header, 'Status'; + push @fields, sub { shift->disabled + ? 'DISABLED' + : 'Active' + }; + push @links, ''; + $align .= 'c'; + push @style, 'b'; +} + +push @header, 'Full name', 'Groups'; +push @fields, 'name', $groups_sub; +push @links, $link, ''; +$align .= 'll'; + +