diff options
author | levinse <levinse> | 2011-04-15 03:04:13 +0000 |
---|---|---|
committer | levinse <levinse> | 2011-04-15 03:04:13 +0000 |
commit | 59be9ba7caf1009a97af97156bbd700bffb18fd4 (patch) | |
tree | c58f49cb73e529ec8ee77200918f2ca412f849ee /httemplate/edit | |
parent | f2cefba60adbf732299acda09d52024748665eef (diff) |
FS/FS/msa.pm
Diffstat (limited to 'httemplate/edit')
-rw-r--r-- | httemplate/edit/did_order.html | 18 | ||||
-rw-r--r-- | httemplate/edit/process/did_order.html | 15 |
2 files changed, 30 insertions, 3 deletions
diff --git a/httemplate/edit/did_order.html b/httemplate/edit/did_order.html index f20e34708..cbd33007d 100644 --- a/httemplate/edit/did_order.html +++ b/httemplate/edit/did_order.html @@ -65,7 +65,7 @@ my $m2_error_callback = sub { my($cgi, $object) = @_; #process_o2m fields in process/did_order.html - my @fields = qw( msa npa latanum ratecenter state quantity ); + my @fields = qw( msanum npa latanum ratecenternum state quantity ); my @gfields = ( '', map "_$_", @fields ); map { @@ -111,6 +111,22 @@ my $javascript = <<END; custnum.value = ''; custnum_search.value = ''; } + + /* o2m or something else is broken, can't put this in the actual + component because random JS and other crap is rendered + onto the final output page */ + function ratecenter_changed(rc) { + var idbase = rc.id.substring(0,rc.id.indexOf('_')); + var div = document.getElementById(idbase+'_rc_div'); + var input = document.getElementById(idbase+'_rc_new'); + if(rc.options[rc.selectedIndex].value == '0') { + div.style.display = 'inline'; + } + else { + div.style.display = 'none'; + } + input.value = ''; + } </SCRIPT> END diff --git a/httemplate/edit/process/did_order.html b/httemplate/edit/process/did_order.html index 1762cfa25..a7d30c36c 100644 --- a/httemplate/edit/process/did_order.html +++ b/httemplate/edit/process/did_order.html @@ -4,7 +4,8 @@ 'value_callback' => $value_callback, 'process_o2m' => { 'table' => 'did_order_item', - 'fields' => \@item_fields, + 'fields' => [ qw( msanum npa latanum ratecenternum state + quantity ) ], }, ) %> @@ -22,6 +23,16 @@ my $value_callback = sub { ($field =~ /ed$/ && $value !~ /^\d+$/) ? parse_datetime($value) : $value; }; -my @item_fields = qw( msa npa latanum ratecenter state quantity ); +my @params = $cgi->param; +foreach my $param ( @params ) { + next unless $param =~ /^(orderitemnum[0-9]+)_rc_new$/; + my $prefix = $1; + my $value = $cgi->param($param); + next unless $value =~ /^[A-Za-z0-9\- ]+$/; + my $rc = new FS::rate_center({ description => $value }); + my $error = $rc->insert; + die "error inserting new rate center: $error" if $error; + $cgi->param("${prefix}_ratecenternum",$rc->ratecenternum); +} </%init> |