X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fedit%2Fprocess%2Frate.cgi;h=48d9322caa5ec92cad83d86d635fa76307e9bd9f;hb=f19956cf9995fee8897542fafa6c7ec13afde381;hp=04ff5f8f77099f33956db9c8266053dabb47a5ad;hpb=48ba2845d0119c56971d5b724661aa37e73b49dd;p=freeside.git diff --git a/httemplate/edit/process/rate.cgi b/httemplate/edit/process/rate.cgi index 04ff5f8f7..48d9322ca 100755 --- a/httemplate/edit/process/rate.cgi +++ b/httemplate/edit/process/rate.cgi @@ -1,37 +1,9 @@ -<% +<% $server->process %> +<%init> -my $ratenum = $cgi->param('ratenum'); +die "access denied" + unless $FS::CurrentUser::CurrentUser->access_right('Configuration'); -my $old = qsearchs('rate', { 'ratenum' => $ratenum } ) if $ratenum; +my $server = new FS::UI::Web::JSRPC 'FS::rate::process', $cgi; -my @rate_detail = map { - my $regionnum = $_->regionnum; - new FS::rate_detail { - 'dest_regionnum' => $regionnum, - map { $_ => $cgi->param("$_$regionnum") } - qw( min_included min_charge sec_granularity ) - }; -} qsearch('rate_region', {} ); - -my $new = new FS::rate ( { - map { - $_, scalar($cgi->param($_)); - } fields('rate') -} ); - -my $error; -if ( $ratenum ) { - $error = $new->replace($old, 'rate_detail' => \@rate_detail ); -} else { - $error = $new->insert( 'rate_detail' => \@rate_detail ); - $ratenum = $new->getfield('ratenum'); -} - -if ( $error ) { - $cgi->param('error', $error); - print $cgi->redirect(popurl(2). "rate.cgi?". $cgi->query_string ); -} else { - print $cgi->redirect(popurl(3). "browse/rate.cgi"); -} - -%> +