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");