diff options
author | ivan <ivan> | 2007-08-01 22:26:52 +0000 |
---|---|---|
committer | ivan <ivan> | 2007-08-01 22:26:52 +0000 |
commit | eb4ff7f73c5d4bdf74a3472448b5a195598ff4cd (patch) | |
tree | bb38241e8c865c3bca861da7749071feeadd2b5b /httemplate/edit/access_group.html | |
parent | 32b5d3a31f112a381f0a15ac5e3a2204242f3405 (diff) |
event refactor, landing on HEAD!
Diffstat (limited to 'httemplate/edit/access_group.html')
-rw-r--r-- | httemplate/edit/access_group.html | 122 |
1 files changed, 78 insertions, 44 deletions
diff --git a/httemplate/edit/access_group.html b/httemplate/edit/access_group.html index d447512c2..4686a627a 100644 --- a/httemplate/edit/access_group.html +++ b/httemplate/edit/access_group.html @@ -1,46 +1,80 @@ <% include( 'elements/edit.html', - 'name' => 'Internal Access Group', - 'table' => 'access_group', - 'labels' => { - 'groupnum' => 'Group number', - 'groupname' => 'Group name', - }, - - 'viewall_dir' => 'browse', - - 'html_bottom' => - sub { - my $access_group = shift; - - "<BR>Group virtualized to customers of agents:<BR>". - ntable("#cccccc",2). - '<TR><TD>'. - include( '/elements/checkboxes-table.html', - 'source_obj' => $access_group, - 'link_table' => 'access_groupagent', - 'target_table' => 'agent', - 'name_col' => 'agent', - 'target_link' => $p.'edit/agent.cgi?', - 'disable-able' => 1, - ). - '</TR></TD></TABLE>'. - - "<BR>Group rights:<BR>". - ntable("#cccccc",2). - '<TR><TD>'. - include( '/elements/checkboxes-table-name.html', - 'source_obj' => $access_group, - 'link_table' => 'access_right', - 'link_static' => { 'righttype' => - 'FS::access_group', - }, - 'num_col' => 'rightobjnum', - 'name_col' => 'rightname', - 'names_list' => [ FS::AccessRight->rights() ], - ). - '</TR></TD></TABLE>' - - ; - }, - ) + 'name' => 'Internal Access Group', + 'table' => 'access_group', + 'labels' => { + 'groupnum' => 'Group number', + 'groupname' => 'Group name', + }, + + 'viewall_dir' => 'browse', + + 'html_bottom' => $html_bottom_sub, + ) %> +<%once> + +tie my %rights, 'Tie::IxHash', FS::AccessRight->rights_info; + +</%once> +<%init> + +my $html_bottom_sub = sub { + my $access_group = shift; + + #some false laziness w/browse/access_group.html + my $columns = 3; + my $count = 0; + + '<BR>'. + '<FONT SIZE="+1">Group limited to these agent(s)</FONT><BR>'. + 'Employees in this group will only see customers of the selected agents in the system and reports.<BR>'. + ntable("#cccccc",2). + '<TR><TD>'. + include( '/elements/checkboxes-table.html', + 'source_obj' => $access_group, + 'link_table' => 'access_groupagent', + 'target_table' => 'agent', + 'name_col' => 'agent', + 'target_link' => $p.'edit/agent.cgi?', + 'disable-able' => 1, + ). + '</TD></TR></TABLE>'. + + '<BR><FONT SIZE="+1">Group access rights</FONT><BR>'. + include('/elements/table-grid.html', bgcolor=>'#cccccc' ). + '<TR>'. join( '', map { + '<TD CLASS="inv" VALIGN="top"><TABLE BGCOLOR="#cccccc" WIDTH=100%>'. + '<TR><TH BGCOLOR="#dcdcdc">'. $_. '</TH></TR>'. + '<TR><TD>'. + include( '/elements/checkboxes-table-name.html', + 'source_obj' => $access_group, + 'link_table' => 'access_right', + 'link_static' => { 'righttype' => + 'FS::access_group', + }, + 'num_col' => 'rightobjnum', + 'name_col' => 'rightname', + 'names_list' => [ map { + my $rn = + ref($_) ? $_->{'rightname'} : $_; + my %hash = (); + $hash{'note'} = ' *' + if ref($_) && $_->{'global'}; + $hash{'desc'} = $_->{'desc'} + if ref($_) && $_->{'desc'}; + [ $rn => \%hash ]; + } + @{ $rights{$_} } + ], + ). + '<BR>'. + '</TD></TR></TABLE></TD>'. + ( ++$count % $columns ? '' : '</TR><TR>') + + } keys %rights ). '</TR></TABLE>'. + + '* Global rights. These rights provide access to global data which is shared among all agents. Their use is not recommended for groups which are limited to a subset of agents.<BR>'; + +}; + +</%init> |