X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fbrowse%2Frouter.cgi;h=85512f8df1a2835b45c6023eb589862118f83d5f;hb=64aec88c35418b8c630811cdf5afb19b2a1c4299;hp=acddf5677a4c7e9c6acc064f50234d688b99c587;hpb=5e05724a635a22776f1b973f5d7e77989da4e048;p=freeside.git
diff --git a/httemplate/browse/router.cgi b/httemplate/browse/router.cgi
index acddf5677..85512f8df 100644
--- a/httemplate/browse/router.cgi
+++ b/httemplate/browse/router.cgi
@@ -1,59 +1,61 @@
-<% include('/elements/header.html', 'Routers') %>
-
-<% include('/elements/error.html') %>
-
-%my $hidecustomerrouters = 0;
-%my $hideurl = '';
-%if ($cgi->param('hidecustomerrouters') eq '1') {
-% $hidecustomerrouters = 1;
-% $cgi->param('hidecustomerrouters', 0);
-% $hideurl = 'Show customer routers';
-%} else {
-% $hidecustomerrouters = 0;
-% $cgi->param('hidecustomerrouters', 1);
-% $hideurl = 'Hide customer routers';
-%}
-
-Add a new router | <%$hideurl%>
-
-<%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 : ' '%> |
-
-% }
-
-
-% }
-
-
-
-<% include('/elements/footer.html') %>
-
+<% 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>
die "access denied"
- unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
+ unless $FS::CurrentUser::CurrentUser->access_right('Broadband configuration')
+ || $FS::CurrentUser::CurrentUser->access_right('Broadband global configuration');
-my @router = qsearch('router', {});
my $p2 = popurl(2);
+my $extra_sql = '';
+
+my @menubar = ( 'Add a new router', "${p2}edit/router.cgi" );
+
+if ($cgi->param('hidecustomerrouters') eq '1') {
+ $extra_sql = 'WHERE svcnum > 0';
+ $cgi->delete('hidecustomerrouters');
+ push @menubar, 'Show customer routers', $cgi->self_url();
+ $cgi->param('hidecustomerrouters', 1);
+} else {
+ $cgi->param('hidecustomerrouters', 1);
+ push @menubar, 'Hide customer routers', $cgi->self_url();
+ $cgi->delete('hidecustomerrouters');
+}
+
+my $count_sql = $extra_sql. ( $extra_sql =~ /WHERE/ ? ' AND' : 'WHERE' ).
+ $FS::CurrentUser::CurrentUser->agentnums_sql(
+ 'null_right' => 'Broadband global configuration',
+ );
+
%init>