-<% include( 'elements/browse.html',
- 'title' => 'Agent Types',
- 'menubar' => [ 'Agents' =>"${p}browse/agent.cgi", ],
- 'html_init' => $html_init,
- 'name' => 'agent types',
- 'query' => { 'table' => 'agent_type',
- 'hashref' => {},
- 'order_by' => 'ORDER BY typenum', # 'ORDER BY atype',
- },
- 'count_query' => $count_query,
- 'header' => [ '#',
- 'Agent Type',
- 'Packages',
- ],
- 'fields' => [ 'typenum',
- 'atype',
- $packages_sub,
- ],
- 'links' => [ $link,
- $link,
- '',
- ],
- )
-%>
+<& elements/browse.html,
+ 'title' => 'Agent Types',
+ 'menubar' => [ 'Agents' => "${p}browse/agent.cgi" ],
+ 'html_init' => $html_init,
+ 'name' => 'agent types',
+ 'disableable' => 1,
+ 'disabled_statuspos' => 2,
+ 'query' => { 'table' => 'agent_type',
+ 'hashref' => {},
+ 'order_by' => 'ORDER BY typenum', # atype?
+ },
+ 'count_query' => $count_query,
+ 'header' => [ '#',
+ 'Agent Type',
+ 'Packages',
+ ],
+ 'fields' => [ 'typenum',
+ 'atype',
+ $packages_sub,
+ ],
+ 'links' => [ $link,
+ $link,
+ '',
+ ],
+&>
<%init>
die "access denied"
#false laziness w/access_user.html
my $packages_sub = sub {
-my $agent_type = shift;
-
-[ map {
- my $type_pkgs = $_;
- #my $part_pkg = $type_pkgs->part_pkg;
- [
- {
- #'data' => $part_pkg->pkg. ' - '. $part_pkg->comment,
- 'data' => encode_entities($type_pkgs->pkg). ' - '.
- ( $type_pkgs->custom ? '(CUSTOM) ' : '' ).
- encode_entities($type_pkgs->comment),
- 'align' => 'left',
- 'link' => $p. 'edit/part_pkg.cgi?'. $type_pkgs->pkgpart,
- },
- ];
- }
-
- $agent_type->type_pkgs_enabled
-];
+ my $agent_type = shift;
+ my @type_pkgs = $agent_type->type_pkgs_enabled;
+ return '(lots; edit agent type to view)' if scalar(@type_pkgs) > 32;
+
+ [ map {
+ my $type_pkgs = $_;
+ #my $part_pkg = $type_pkgs->part_pkg;
+ [
+ {
+ #'data' => $part_pkg->pkg. ' - '. $part_pkg->comment,
+ 'data' => encode_entities($type_pkgs->pkg). ' - '.
+ ( $type_pkgs->custom ? '(CUSTOM) ' : '' ).
+ encode_entities($type_pkgs->comment),
+ 'align' => 'left',
+ 'link' => $p. 'edit/part_pkg.cgi?'. $type_pkgs->pkgpart,
+ },
+ ];
+ }
+ @type_pkgs
+ ];
};