3 local $FS::UID::AutoCommit=0;
8 $cgi->param('error', $error);
9 print $cgi->redirect(popurl(3) . "edit/router.cgi?". $cgi->query_string);
16 my $routernum = $cgi->param('routernum');
17 my $routername = $cgi->param('routername');
18 my $old = qsearchs('router', { routernum => $routernum });
21 my $new = new FS::router {
23 ($_, scalar($cgi->param($_)));
28 $error = $new->replace($old);
30 $error = $new->insert;
31 $routernum = $new->routernum;
37 @old_psr = $old->part_svc_router;
38 foreach my $psr (@old_psr) {
39 if($cgi->param('svcpart_'.$psr->svcpart) eq 'ON') {
42 $error = $psr->delete;
48 foreach($cgi->param) {
49 if($cgi->param($_) eq 'ON' and /^svcpart_(\d+)$/) {
51 if(grep {$_->svcpart == $svcpart} @old_psr) {
54 my $new_psr = new FS::part_svc_router { svcpart => $svcpart,
55 routernum => $routernum };
56 $error = $new_psr->insert;
63 # Yay, everything worked!
64 dbh->commit or die dbh->errstr;
65 print $cgi->redirect(popurl(3). "browse/router.cgi");