import torrus 1.0.9
[freeside.git] / httemplate / edit / process / router.cgi
index 7e0baf7..3cbb8c5 100644 (file)
@@ -1,70 +1,20 @@
-%local $FS::UID::AutoCommit=0;
-%
-%sub check {
-%  my $error = shift;
-%  if($error) {
-%    $cgi->param('error', $error);
-%    print $cgi->redirect(popurl(3) . "edit/router.cgi?". $cgi->query_string);
-%    dbh->rollback;
-%    exit;
-%  }
-%}
-%
-%my $error = '';
-%my $routernum  = $cgi->param('routernum');
-%my $routername = $cgi->param('routername');
-%my $old = qsearchs('router', { routernum => $routernum });
-%my @old_psr;
-%
-%my $new = new FS::router {
-%  map {
-%    ($_, scalar($cgi->param($_)));
-%  } fields('router')
-%};
-%
-%if($old) {
-%  $error = $new->replace($old);
-%} else {
-%  $error = $new->insert;
-%  $routernum = $new->routernum;
-%}
-%
-%check($error);
-%
-%if ($old) {
-%  @old_psr = $old->part_svc_router;
-%  foreach my $psr (@old_psr) {
-%    if($cgi->param('svcpart_'.$psr->svcpart) eq 'ON') {
-%      # do nothing
-%    } else {
-%      $error = $psr->delete;
-%    }
-%  }
-%  check($error);
-%}
-%
-%foreach($cgi->param) {
-%  if($cgi->param($_) eq 'ON' and /^svcpart_(\d+)$/) {
-%    my $svcpart = $1;
-%    if(grep {$_->svcpart == $svcpart} @old_psr) {
-%      # do nothing
-%    } else {
-%      my $new_psr = new FS::part_svc_router { svcpart   => $svcpart,
-%                                              routernum => $routernum };
-%      $error = $new_psr->insert;
-%    }
-%    check($error);
-%  }
-%}
-%
-%
-%# Yay, everything worked!
-%dbh->commit or die dbh->errstr;
-%print $cgi->redirect(popurl(3). "browse/router.cgi");
-%
+<% include('elements/process.html',
+           'table'            => 'router',
+           'viewall_dir'      => 'browse',
+           'viewall_ext'      => 'cgi',
+           'edit_ext'         => 'cgi',
+           'process_m2m'      => { 'link_table'   => 'part_svc_router',
+                                   'target_table' => 'part_svc',
+                                 },
+           'agent_virt'       => 1,
+           'agent_null_right' => 'Broadband global configuration',
+   )
+%>
 <%init>
+my $curuser = $FS::CurrentUser::CurrentUser;
 
 die "access denied"
-  unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
+  unless $curuser->access_right('Broadband configuration')
+      || $curuser->access_right('Broadband global configuration');
 
 </%init>