10afcc1f9b2c02e86b207887635cff91fc7605ec
[freeside.git] / httemplate / edit / process / svc_acct_sm.cgi
1 <%
2 #<!-- $Id: svc_acct_sm.cgi,v 1.2 2001-08-21 02:31:56 ivan Exp $ -->
3
4 use strict;
5 use vars qw( $cgi $svcnum $old $new $error );
6 use CGI;
7 use CGI::Carp qw(fatalsToBrowser);
8 use FS::UID qw(cgisuidsetup);
9 use FS::Record qw(qsearchs fields);
10 use FS::svc_acct_sm;
11 use FS::CGI qw(popurl);
12
13 $cgi = new CGI;
14 cgisuidsetup($cgi);
15
16 $cgi->param('svcnum') =~ /^(\d*)$/ or die "Illegal svcnum!";
17 $svcnum =$1;
18
19 $old = qsearchs('svc_acct_sm',{'svcnum'=>$svcnum}) if $svcnum;
20
21 #unmunge domsvc and domuid
22 #$cgi->param('domsvc',(split(/:/, $cgi->param('domsvc') ))[0] );
23 #$cgi->param('domuid',(split(/:/, $cgi->param('domuid') ))[0] );
24
25 $new = new FS::svc_acct_sm ( {
26   map {
27     ($_, scalar($cgi->param($_)));
28   #} qw(svcnum pkgnum svcpart domuser domuid domsvc)
29   } ( fields('svc_acct_sm'), qw( pkgnum svcpart ) )
30 } );
31
32 if ( $svcnum ) {
33   $error = $new->replace($old);
34 } else {
35   $error = $new->insert;
36   $svcnum = $new->getfield('svcnum');
37
38
39 if ($error) {
40   $cgi->param('error', $error);
41   print $cgi->redirect(popurl(2). "svc_acct_sm.cgi?". $cgi->query_string );
42 } else {
43   print $cgi->redirect(popurl(3). "view/svc_acct_sm.cgi?$svcnum");
44 }
45
46 %>