<& 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" unless $FS::CurrentUser::CurrentUser->access_right('Configuration'); my $html_init = 'Agent types define groups of packages that you can then assign to'. ' particular agents.

'. qq!Add a new agent type

!; my $count_query = 'SELECT COUNT(*) FROM agent_type'; #false laziness w/access_user.html my $packages_sub = sub { 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 ]; }; my $link = [ $p.'edit/agent_type.cgi?', 'typenum' ];