1 %local $FS::UID::AutoCommit=0;
6 % $cgi->param('error', $error);
7 % print $cgi->redirect(popurl(3) . "edit/router.cgi?". $cgi->query_string);
14 %my $routernum = $cgi->param('routernum');
15 %my $routername = $cgi->param('routername');
16 %my $old = qsearchs('router', { routernum => $routernum });
19 %my $new = new FS::router {
21 % ($_, scalar($cgi->param($_)));
26 % $error = $new->replace($old);
28 % $error = $new->insert;
29 % $routernum = $new->routernum;
35 % @old_psr = $old->part_svc_router;
36 % foreach my $psr (@old_psr) {
37 % if($cgi->param('svcpart_'.$psr->svcpart) eq 'ON') {
40 % $error = $psr->delete;
46 %foreach($cgi->param) {
47 % if($cgi->param($_) eq 'ON' and /^svcpart_(\d+)$/) {
49 % if(grep {$_->svcpart == $svcpart} @old_psr) {
52 % my $new_psr = new FS::part_svc_router { svcpart => $svcpart,
53 % routernum => $routernum };
54 % $error = $new_psr->insert;
61 %# Yay, everything worked!
62 %dbh->commit or die dbh->errstr;
63 %print $cgi->redirect(popurl(3). "browse/router.cgi");
68 unless $FS::CurrentUser::CurrentUser->access_right('Configuration');