-%
-%
-%my $html_init =
-% 'Package classes define groups of packages, for reporting and '.
-% 'convenience purposes.<BR><BR>'.
-% qq!<A HREF="${p}edit/pkg_class.html"><I>Add a package class</I></A><BR><BR>!;
-%
-%my $count_query = 'SELECT COUNT(*) FROM pkg_class';
-%
-%my $link = [ $p.'edit/pkg_class.html?', 'classnum' ];
-%
-%
<% include( 'elements/browse.html',
'title' => 'Package classes',
- 'menubar' => [ 'Main menu' => $p, ],
'html_init' => $html_init,
'name' => 'package classes',
+ 'disableable' => 1,
+ 'disabled_statuspos' => 2,
'query' => { 'table' => 'pkg_class',
'hashref' => {},
- 'extra_sql' => 'ORDER BY classnum',
+ 'order_by' => 'ORDER BY classnum',
},
'count_query' => $count_query,
- 'header' => [ '#', 'Class', ],
- 'fields' => [ 'classnum', 'classname' ],
- 'links' => [ $link, $link ],
+ '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.<BR><BR>'.
+ qq!<A HREF="${p}edit/pkg_class.html"><I>Add a package class</I></A><BR><BR>!;
+
+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>