X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fbrowse%2Frouter.cgi;h=85512f8df1a2835b45c6023eb589862118f83d5f;hp=149db49031d08fc05367cd8838644e73289e6748;hb=b71b1576c68bc40ad26592b354feace37a029f0e;hpb=2041a9143fac20b79ead4a1ae01224dedf5b27c2 diff --git a/httemplate/browse/router.cgi b/httemplate/browse/router.cgi index 149db4903..85512f8df 100644 --- a/httemplate/browse/router.cgi +++ b/httemplate/browse/router.cgi @@ -1,57 +1,61 @@ -<%= header('Routers', menubar('Main Menu' => $p)) %> -<% +<% include('elements/browse.html', + 'title' => 'Routers', + 'menubar' => [ @menubar ], + 'name_singular' => 'router', + 'query' => { 'table' => 'router', + 'hashref' => {}, + 'extra_sql' => $extra_sql, + }, + 'count_query' => "SELECT count(*) from router $count_sql", + 'header' => [ 'Router name', + 'Address block(s)', + 'IP addressing', + 'Action', + ], + 'fields' => [ 'routername', + sub { join( '
', map { $_->NetAddr } + shift->addr_block + ); + }, + sub { shift->manual_addr ? 'Manual' : 'Automatic' }, + sub { 'Delete' }, + ], + 'links' => [ [ "${p2}edit/router.cgi?", 'routernum' ], + '', + '', + [ "${p}misc/delete-router.html?", 'routernum' ], + ], + 'agent_virt' => 1, + 'agent_null_right'=> "Broadband global configuration", + 'agent_pos' => 1, + ) +%> +<%init> -my @router = qsearch('router', {}); -my $p2 = popurl(2); +die "access denied" + unless $FS::CurrentUser::CurrentUser->access_right('Broadband configuration') + || $FS::CurrentUser::CurrentUser->access_right('Broadband global configuration'); -%> +my $p2 = popurl(2); +my $extra_sql = ''; -<% if ($cgi->param('error')) { %> - Error: <%=$cgi->param('error')%> -

-<% } %> +my @menubar = ( 'Add a new router', "${p2}edit/router.cgi" ); -<% -my $hidecustomerrouters = 0; -my $hideurl = ''; if ($cgi->param('hidecustomerrouters') eq '1') { - $hidecustomerrouters = 1; - $cgi->param('hidecustomerrouters', 0); - $hideurl = 'Show customer routers'; + $extra_sql = 'WHERE svcnum > 0'; + $cgi->delete('hidecustomerrouters'); + push @menubar, 'Show customer routers', $cgi->self_url(); + $cgi->param('hidecustomerrouters', 1); } else { - $hidecustomerrouters = 0; $cgi->param('hidecustomerrouters', 1); - $hideurl = 'Hide customer routers'; + push @menubar, 'Hide customer routers', $cgi->self_url(); + $cgi->delete('hidecustomerrouters'); } -%> -Add a new router | <%=$hideurl%> +my $count_sql = $extra_sql. ( $extra_sql =~ /WHERE/ ? ' AND' : 'WHERE' ). + $FS::CurrentUser::CurrentUser->agentnums_sql( + 'null_right' => 'Broadband global configuration', + ); -<%=table()%> - - Router name - Address block(s) - -<% foreach my $router (sort {$a->routernum <=> $b->routernum} @router) { - next if $hidecustomerrouters && $router->svcnum; - my @addr_block = $router->addr_block; - if (scalar(@addr_block) == 0) { - push @addr_block, ' '; - } -%> - - - <%=$router->routername%> - - - <% foreach my $block ( @addr_block ) { %> - - <%=UNIVERSAL::isa($block, 'FS::addr_block') ? $block->NetAddr : ' '%> - - <% } %> - -<% } %> - - - +