1 <% include('elements/browse.html',
3 'menubar' => [ @menubar ],
4 'name_singular' => 'router',
5 'query' => { 'table' => 'router',
7 'extra_sql' => $extra_sql,
9 'count_query' => "SELECT count(*) from router $count_sql",
10 'header' => [ @header_fields ],
11 'fields' => [ @fields ],
12 'links' => [ @links ],
14 'agent_null_right'=> "Broadband global configuration",
21 unless $FS::CurrentUser::CurrentUser->access_right('Broadband configuration')
22 || $FS::CurrentUser::CurrentUser->access_right('Broadband global configuration');
27 my @menubar = ( 'Add a new router', "${p2}edit/router.cgi" );
29 if ($cgi->param('hidecustomerrouters') eq '1') {
30 $extra_sql = 'WHERE svcnum > 0';
31 $cgi->delete('hidecustomerrouters');
32 push @menubar, 'Show customer routers', $cgi->self_url();
33 $cgi->param('hidecustomerrouters', 1);
35 $cgi->param('hidecustomerrouters', 1);
36 push @menubar, 'Hide customer routers', $cgi->self_url();
37 $cgi->delete('hidecustomerrouters');
40 my @header_fields = ('Router name', 'Address block(s)', 'IP addressing');
41 my @fields = ( 'routername',
42 sub { join( '<BR>', map { $_->NetAddr } shift->addr_block); },
43 sub { shift->manual_addr ? 'Manual' : 'Automatic' },
45 my @links = ( [ "${p2}edit/router.cgi?", 'routernum' ],
50 foreach (FS::router->virtual_fields_hash) {
51 push @header_fields, encode_entities($_->{'label'});
52 push @fields, encode_entities($_->{'name'});
56 push @header_fields, 'Action';
57 push @fields, sub { 'Delete' };
58 push @links, [ "${p}misc/delete-router.html?", 'routernum' ];
60 my $count_sql = $extra_sql. ( $extra_sql =~ /WHERE/ ? ' AND' : 'WHERE' ).
61 $FS::CurrentUser::CurrentUser->agentnums_sql(
62 'null_right' => 'Broadband global configuration',