% include( 'elements/browse.html',
                 'title'       => 'Package classes',
                 'html_init'   => $html_init,
                 'name'        => 'package classes',
                 'disableable' => 1,
                 'disabled_statuspos' => 2,
                 'query'       => { 'table'     => 'pkg_class',
                                    'hashref'   => {},
                                    'order_by' => 'ORDER BY classnum',
                                  },
                 'count_query' => $count_query,
                 'header'      => $header,
                 'fields'      => $fields,
                 'links'       => $links,
             )
%>
<%init>
die "access denied"
  unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
my $conf = new FS::Conf;
my $html_init = 
  'Package classes define groups of packages, for taxation, ordering '.
  'convenience and reporting.
'.
  qq!Add a package class
!;
my $count_query = 'SELECT COUNT(*) FROM pkg_class';
my $link = [ $p.'edit/pkg_class.html?', 'classnum' ];
my $header = [ '#', 'Class' ];
my $fields = [ 'classnum', 'classname' ];
my $links  = [ $link, $link ];
if($conf->exists('cust_main-require_censustract')) {
    push @{$fields}, 'fcc_ds0s';
    push @{$header}, 'FCC form 477 voice-grade equivalents';
    push @{$links}, '';
}
my $cat_query = 'SELECT COUNT(*) FROM pkg_class where categorynum IS NOT NULL';
my $sth = dbh->prepare($cat_query)
  or die "Error preparing $cat_query: ". dbh->errstr;
$sth->execute
  or die "Error executing $cat_query: ". $sth->errstr;
if ($sth->fetchrow_arrayref->[0]) {
  push @$header, 'Category';
  push @$fields, 'categoryname';
  push @$links,  $link;
}
%init>