add router and addr_block delete features, RT13197
authorlevinse <levinse>
Wed, 22 Jun 2011 23:41:27 +0000 (23:41 +0000)
committerlevinse <levinse>
Wed, 22 Jun 2011 23:41:27 +0000 (23:41 +0000)
httemplate/browse/addr_block.cgi
httemplate/browse/router.cgi
httemplate/misc/delete-addr_block.html [new file with mode: 0644]

index 7ff0eaa..46b12e6 100644 (file)
@@ -158,7 +158,4 @@ my $autoassign_link = sub {
   [ "$url;blocknum=", 'blocknum' ];
 }; 
 
-my $delete_link = sub {
-};
-
 </%init>
index 541e967..069ca9b 100644 (file)
@@ -9,15 +9,18 @@
                 'count_query'     => "SELECT count(*) from router $count_sql",
                 'header'          => [ 'Router name',
                                        'Address block(s)',
+                                       'Action',
                                      ],
                 'fields'          => [ 'routername',
                                        sub { join( '<BR>', map { $_->NetAddr }
                                                                shift->addr_block
                                                  );
                                            },
+                                       sub { 'Delete' },
                                      ],
                 'links'           => [ [ "${p2}edit/router.cgi?", 'routernum' ],
                                        '',
+                                       [ "${p}misc/delete-router.html?", 'routernum' ],
                                      ],
                 'agent_virt'      => 1,
                 'agent_null_right'=> "Broadband global configuration",
diff --git a/httemplate/misc/delete-addr_block.html b/httemplate/misc/delete-addr_block.html
new file mode 100644 (file)
index 0000000..83a4b68
--- /dev/null
@@ -0,0 +1,19 @@
+% if ( $error ) {
+%   errorpage($error);
+% } else {
+<% $cgi->redirect("${p}browse/addr_block.cgi") %>
+% }
+<%init>
+
+die "access denied"
+  unless $FS::CurrentUser::CurrentUser->access_right('Broadband configuration')
+  || $FS::CurrentUser::CurrentUser->access_right('Broadband global configuration');
+
+my($query) = $cgi->keywords;
+$query =~ /^(\d+)$/ || die "Illegal blocknum";
+my $blocknum = $1;
+
+my $addr_block = qsearchs('addr_block',{'blocknum'=>$blocknum});
+my $error = $addr_block->delete;
+
+</%init>