improvements to bulk DID orders, RT11291
[freeside.git] / httemplate / elements / did_order_item.html
1 % unless ( $opt{'js_only'} ) {
2
3   <INPUT TYPE="hidden" NAME="<%$name%>" ID="<%$id%>" VALUE="<% $curr_value %>">
4
5   <TABLE>
6     <TR>
7 %     foreach my $field ( @textfields ) {
8 %
9 %       my $value = '';
10 %         $value = $item->get($field);
11
12         <TD>
13           <INPUT TYPE  = "text"
14                  NAME  = "<%$name%>_<%$field%>"
15                  ID    = "<%$id%>_<%$field%>"
16                  SIZE  = "<% $size{$field} || 15 %>"
17                  VALUE = "<% scalar($cgi->param($name."_$field"))
18                              || $value |h %>"
19                  <% $onchange %>
20           >
21           <BR><FONT SIZE="-1"><% $label{$field} %></FONT>
22         </TD>
23 %     }
24 %     my $value = '';
25 %     $value = $item->get('latanum');
26       <TD><% include('/elements/select-table.html',
27                          'name_col'      => 'description',
28                          'table'         => 'lata',
29                          'disable_empty' => 0,
30                          'empty_label'   => ' ',
31                          'label_showkey' => 1,
32                          'field'         => "${name}_latanum",
33                          'curr_value'    => scalar($cgi->param("${name}_latanum"))
34                                              || $value,
35                       )
36             %>
37         <BR><FONT SIZE="-1">LATA #</FONT>
38       </TD>
39 %     $value = $item->get('state');
40       <TD><% include('/elements/select-state.html',
41                          'disable_empty' => 0,
42                          'empty_label'   => ' ',
43                          'country'       => 'US',
44                          'prefix'        => "${name}_",
45                          'state'         => scalar($cgi->param("${name}_state"))
46                                             || $value,
47                       )
48             %>
49           <BR><FONT SIZE="-1">State</FONT>
50       </TD>
51     </TR>
52   </TABLE>
53
54 % }
55 <%init>
56
57 my( %opt ) = @_;
58
59 my $name = $opt{'element_name'} || $opt{'field'} || 'orderitemnum';
60 my $id = $opt{'id'} || 'orderitemnum';
61
62 my $curr_value = $opt{'curr_value'} || $opt{'value'};
63
64 my $onchange = '';
65 if ( $opt{'onchange'} ) {
66   $onchange = $opt{'onchange'};
67   $onchange .= '(this)' unless $onchange =~ /\(\w*\);?$/;
68   $onchange =~ s/\(what\);/\(this\);/g; #ugh, terrible hack.  all onchange
69                                         #callbacks should act the same
70   $onchange = 'onChange="'. $onchange. '"';
71 }
72
73 my $item;
74 if ( $curr_value ) {
75   $item = qsearchs('did_order_item', { 'orderitemnum' => $curr_value } );
76 } else {
77   $item = new FS::did_order_item {};
78 }
79
80 my %size = ( 'npa' => 3, 
81              'quantity' => 3,);
82
83 tie my %label, 'Tie::IxHash',
84   'quantity' => 'Quantity',
85   'npa'        => 'NPA',
86   'ratecenter'        => 'Rate Center',
87   'msa'        => 'MSA',
88 ;
89 my @textfields = keys %label;
90
91 </%init>