bulk DID order/inventory improvements, 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 ( @fields ) {
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           ><BR>
21           <FONT SIZE="-1"><% $label{$field} %></FONT>
22         </TD>
23 %     }
24     </TR>
25   </TABLE>
26
27 % }
28 <%init>
29
30 my( %opt ) = @_;
31
32 my $name = $opt{'element_name'} || $opt{'field'} || 'orderitemnum';
33 my $id = $opt{'id'} || 'orderitemnum';
34
35 my $curr_value = $opt{'curr_value'} || $opt{'value'};
36
37 my $onchange = '';
38 if ( $opt{'onchange'} ) {
39   $onchange = $opt{'onchange'};
40   $onchange .= '(this)' unless $onchange =~ /\(\w*\);?$/;
41   $onchange =~ s/\(what\);/\(this\);/g; #ugh, terrible hack.  all onchange
42                                         #callbacks should act the same
43   $onchange = 'onChange="'. $onchange. '"';
44 }
45
46 my $item;
47 if ( $curr_value ) {
48   $item = qsearchs('did_order_item', { 'orderitemnum' => $curr_value } );
49 } else {
50   $item = new FS::did_order_item {};
51 }
52
53 my %size = ( 'npa' => 3, 
54              'latanum' => 3,
55              'state' => 2,
56              'quantity' => 3,);
57
58 tie my %label, 'Tie::IxHash',
59   'msa'        => 'MSA',
60   'npa'        => 'NPA',
61   'latanum'         => 'LATA #',
62   'rate_center'        => 'Rate Center',
63   'state' => 'State',
64   'quantity' => 'Quantity',
65 ;
66
67 my @fields = keys %label;
68
69 </%init>