Option to ignore old CDRs, RT#81480
[freeside.git] / httemplate / browse / pkg_class.html
index 4f02ca2..eb33c0f 100644 (file)
@@ -5,13 +5,14 @@
                  'disableable' => 1,
                  'disabled_statuspos' => 2,
                  'query'       => { 'table'     => 'pkg_class',
+                                    'addl_from' => ' LEFT JOIN pkg_category USING (categorynum)',
                                     '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 reporting and '.
-  'convenience purposes.<BR><BR>'.
+  '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 ];
+
+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,  [ $p.'edit/pkg_category.html?', 'categorynum' ]
+}
+
 </%init>