summaryrefslogtreecommitdiff
path: root/httemplate/edit
diff options
context:
space:
mode:
authorlevinse <levinse>2011-04-15 03:04:13 +0000
committerlevinse <levinse>2011-04-15 03:04:13 +0000
commit59be9ba7caf1009a97af97156bbd700bffb18fd4 (patch)
treec58f49cb73e529ec8ee77200918f2ca412f849ee /httemplate/edit
parentf2cefba60adbf732299acda09d52024748665eef (diff)
FS/FS/msa.pm
Diffstat (limited to 'httemplate/edit')
-rw-r--r--httemplate/edit/did_order.html18
-rw-r--r--httemplate/edit/process/did_order.html15
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>