summaryrefslogtreecommitdiff
path: root/httemplate/edit/process/svc_external.cgi
blob: 728cd2189a26595be873a03821f514078d05752b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<%

$cgi->param('svcnum') =~ /^(\d*)$/ or die "Illegal svcnum!";
my $svcnum =$1;

my $old = qsearchs('svc_external',{'svcnum'=>$svcnum}) if $svcnum;

my $new = new FS::svc_external ( {
  map {
    ($_, scalar($cgi->param($_)));
  } ( fields('svc_external'), qw( pkgnum svcpart ) )
} );

my $error = '';
if ( $svcnum ) {
  $error = $new->replace($old);
} else {
  $error = $new->insert;
  $svcnum = $new->getfield('svcnum');
} 

if ($error) {
  $cgi->param('error', $error);
  print $cgi->redirect(popurl(2). "svc_external.cgi?". $cgi->query_string );
} else {
  print $cgi->redirect(popurl(3). "view/svc_external.cgi?$svcnum");
}

%>