-%
-%
-%tie my %labels, 'Tie::IxHash',
-% 'num_avail' => 'Available', # <FONT SIZE="-1"><A HREF="eventually">(upload batch)</A></FONT>',
-% 'num_used' => 'In use', #'Used', #'Allocated',
-% 'num_total' => 'Total',
-%;
-%
-%my %link = (
-% 'num_avail' => ';avail=1',
-% 'num_used' => ';used=1',
-% 'num_total' => '',
-%);
-%
-%my %inv_action_link = (
-% 'num_avail' => [ 'upload batch',
-% $p.'misc/inventory_item-import.html?classnum=',
-% 'classnum'
-% ],
-%);
-%
-%my $link = [ "${p}edit/inventory_class.html?", 'classnum' ];
-%
-%
<% include( 'elements/browse.html',
'title' => 'Inventory Classes',
'name' => 'inventory classes',
- 'menubar' => [ 'Add a new inventory class' =>
- $p.'edit/inventory_class.html',
- ],
+ 'menubar' => $menubar,
'query' => { 'table' => 'inventory_class', },
'count_query' => 'SELECT COUNT(*) FROM inventory_class',
'header' => [ '#', 'Inventory class', 'Inventory' ],
'fields' => [ 'classnum',
'classname',
- sub {
- #my $inventory_class = shift;
- my $i_c = shift;
-
- my $link =
- $p. 'search/inventory_item.html?'.
- 'classnum='. $i_c->classnum;
-
- my %actioncol = ();
- foreach ( keys %inv_action_link ) {
- my($label, $baseurl, $method) =
- @{ $inv_action_link{$_} };
- my $url = $baseurl. $i_c->$method();
- $actioncol{$_} =
- '<FONT SIZE="-1">'.
- '('.
- '<A HREF="'.$url.'">'.
- $label.
- '</A>'.
- ')'.
- '</FONT>';
- }
-
- my %num = map {
- $_ => $i_c->$_();
- } keys %labels;
-
- [ map {
- [
- {
- 'data' => '<B>'. $num{$_}. '</B>',
- 'align' => 'right',
- },
- {
- 'data' => $labels{$_},
- 'align' => 'left',
- 'link' => ( $num{$_}
- ? $link.$link{$_}
- : ''
- ),
- },
- { 'data' => $actioncol{$_},
- 'align' => 'left',
- },
- ]
- } keys %labels
- ];
- },
+ FS::inventory_class->countcell_factory(
+ 'p'=>$p,
+ ),
],
'links' => [ $link,
$link,
],
)
%>
+<%init>
+
+my $curuser = $FS::CurrentUser::CurrentUser;
+
+die "access denied"
+ unless $curuser->access_right('Edit inventory')
+ || $curuser->access_right('Edit global inventory')
+ || $curuser->access_right('Configuration');
+
+my $menubar = $curuser->access_right('Configuration')
+ ? [ 'Add a new inventory class' =>
+ $p.'edit/inventory_class.html',
+ ]
+ : [];
+
+my $link = $curuser->access_right('Configuration')
+ ? [ "${p}edit/inventory_class.html?", 'classnum' ]
+ : '';
+
+</%init>