X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fedit%2Fprocess%2Fpart_bill_event.cgi;h=af594f2648aad3fbf9bb8dee7131a2462c75bd39;hb=22c7daa1fd079e3ec9dee4da241f83e174132e4e;hp=dd5cd0c8ed17863e9a5371e95b2bb4875900fd73;hpb=52281cbeaf8d4e02345eca3c1aa0500133823558;p=freeside.git diff --git a/httemplate/edit/process/part_bill_event.cgi b/httemplate/edit/process/part_bill_event.cgi index dd5cd0c8e..af594f264 100755 --- a/httemplate/edit/process/part_bill_event.cgi +++ b/httemplate/edit/process/part_bill_event.cgi @@ -18,36 +18,23 @@ % $cgi->param('weight', $2); % my $eventcode = $3; % my $plandata = ''; -% while ( $eventcode =~ /%%%(\w+)%%%/ ) { -% my $field = $1; -% my $value = join(', ', $cgi->param($field) ); -% $cgi->param($field, $value); #in case it errors out -% $eventcode =~ s/%%%$field%%%/$value/; -% $plandata .= "$field $value\n"; -% } -% $cgi->param('eventcode', $eventcode); -% $cgi->param('plandata', $plandata); % % my $rnum; % my $rtype; % my $reasonm; -% if ($eventcode =~ /cancel/) { -% $cgi->param('creason') =~ /^(-?\d+)$/ || die "Invalid creason"; -% $rnum = $1; -% if ($rnum == -1) { -% $cgi->param('newcreasonT') =~ /^(\d+)$/ || die "Invalid newcreasonT"; -% $rtype = $1; -% $cgi->param('newcreason') =~ /^([\s\w]+)$/ || die "Invalid newcreasonT"; -% $reasonm = $1; -% } -% } -% if ($eventcode =~ /suspend/) { -% $cgi->param('sreason') =~ /^(-?\d+)$/ || die "Invalid sreason"; +% my $class = ''; +% $class='c' if ($eventcode =~ /cancel/); +% $class='s' if ($eventcode =~ /suspend/); +% if ($class) { +% $cgi->param("${class}reason") =~ /^(-?\d+)$/ +% or $error = "Invalid ${class}reason"; % $rnum = $1; % if ($rnum == -1) { -% $cgi->param('newsreasonT') =~ /^(\d+)$/ || die "Invalid newsreasonT"; +% $cgi->param("new${class}reasonT") =~ /^(\d+)$/ +% or $error = "Invalid new${class}reasonT"; % $rtype = $1; -% $cgi->param('newsreason') =~ /^([\s\w]+)$/ || die "Invalid newsreasonT"; +% $cgi->param("new${class}reason") =~ /^([\s\w]+)$/ +% or $error = "Invalid new${class}reason"; % $reasonm = $1; % } % } @@ -56,9 +43,25 @@ % my $reason = new FS::reason ({ 'reason' => $reasonm, % 'reason_type' => $rtype, % }); -% $error = $reason->insert or $rnum = $reason->reasonnum; +% $error = $reason->insert; +% unless ($error) { +% $rnum = $reason->reasonnum; +% $cgi->param("${class}reason", $rnum); +% $cgi->param("new${class}reason", ''); +% $cgi->param("new${class}reasonT", ''); +% } % } % +% while ( $eventcode =~ /%%%(\w+)%%%/ ) { +% my $field = $1; +% my $value = join(', ', $cgi->param($field) ); +% $cgi->param($field, $value); #in case it errors out +% $eventcode =~ s/%%%$field%%%/$value/; +% $plandata .= "$field $value\n"; +% } +% $cgi->param('eventcode', $eventcode); +% $cgi->param('plandata', $plandata); +% % unless($error){ % my $new = new FS::part_bill_event ( { % map { @@ -84,5 +87,3 @@ %} % % - -