9ebb2b88234a4838364d2a65a5c80bd74f791680
[freeside.git] / httemplate / browse / access_group.html
1 <%
2
3 my $html_init = 
4   "Internal access groups control access to the back-office interface.<BR><BR>".
5   qq!<A HREF="${p}edit/access_group.html"><I>Add an internal access group</I></A><BR><BR>!;
6
7 #false laziness w/access_user.html & agent_type.cgi
8 my $agents_sub = sub {
9   my $access_group = shift;
10
11   [ map {
12           my $access_groupagent = $_;
13           my $agent = $access_groupagent->agent;
14           [
15             {
16               'data'  => $agent->agent,
17               'align' => 'left',
18               'link'  => $p. 'edit/agent.cgi?'. $agent->agentnum,
19             },
20           ];
21         }
22     grep { $_->agent } #?
23     $access_group->access_groupagent,
24
25   ];
26   
27 };
28
29 my $rights_sub = sub {
30   my $access_group = shift;
31
32   [ map { my $access_right = $_;
33           [
34             { 
35               'data'  => $access_right->rightname,
36               'align' => 'left',
37             },
38           ];
39         }
40     $access_group->access_rights,
41
42   ];
43
44 };
45
46 my $count_query = 'SELECT COUNT(*) FROM access_group';
47
48 my $link = [ $p.'edit/access_group.html?', 'groupnum' ];
49
50 %><%= include( 'elements/browse.html',
51                  'title'       => 'Internal Access Groups',
52                  'menubar'     => [ # 'Main menu' => $p,
53                                     'Internal users' => $p.'browse/access_user.html',
54                                   ],
55                  'html_init'   => $html_init,
56                  'name'        => 'internal access groups',
57                  'query'       => { 'table'     => 'access_group',
58                                     'hashref'   => {},
59                                     'extra_sql' => 'ORDER BY groupname', #??
60                                   },
61                  'count_query' => $count_query,
62                  'header'      => [ '#',
63                                     'Group name',
64                                     'Agents',
65                                     'Rights',
66                                   ],
67                  'fields'      => [ 'groupnum',
68                                     'groupname',
69                                     $agents_sub,
70                                     $rights_sub,
71                                   ],
72                  'links'       => [ $link,
73                                     $link,
74                                     '',
75                                     '',
76                                   ],
77              )
78 %>