svc_cable service have a single serial / MAC / model, not one-to-many devices like...
[freeside.git] / httemplate / edit / elements / part_svc_column.html
index d03c49d..64901a8 100644 (file)
@@ -157,6 +157,9 @@ that field.
           'multiple'    => $def->{'multiple'},
           'disable_empty' => 1,
           'curr_value'  => $value,
+          # these can be switched between multiple and singular,
+          # so put the complete curr_value in an attribute
+          'element_etc' => 'default="'.encode_entities($value).'"',
       &>
 %     } else {
 %       my (@options, %labels);
@@ -180,8 +183,8 @@ that field.
           'curr_value'  => $value,
       &>
 %     }
-%   } elsif ( $def->{'type'} =~ /select-(.*?).html/ ) {
-      <& '/elements/'.$def->{'type'},
+%   } elsif ( $def->{'type'} =~ /^select-(.*?)(.html)?$/ && $1 ne 'hardware' ) {
+      <& "/elements/select-$1.html",
           'field'       => $name,
           'id'          => $name.'_select',
           'multiple'    => $def->{'multiple'},
@@ -204,15 +207,20 @@ that field.
              NAME="<%$name%>"
              ID="<%$name%>" 
              VALUE="<%$value%>">
-%     # inventory class selection
+%     my $mode = 'inventory';
+%     my $multiple = 1;
+%     if ( $def->{'type'} eq 'select-hardware' ) {
+%       $mode = 'hardware';
+%       $multiple = 0;
+%     }
       <& /elements/select-table.html,
           'field'       => $name.'_classnum',
           'id'          => $name.'_select',
-          'table'       => 'inventory_class',
+          'table'       => $mode.'_class',
           'name_col'    => 'classname',
           'curr_value'  => $value,
-          'empty_label' => 'Select inventory class',
-          'multiple'    => 1,
+          'empty_label' => "Select $mode class",
+          'multiple'    => $multiple,
       &>
 %   }
     </TD>
@@ -240,6 +248,19 @@ that field.
     </TD>
   </TR>
 % }
+% # special case: services with attached routers (false laziness...)
+% if ( $svcdb eq 'svc_acct' or $svcdb eq 'svc_broadband' or $svcdb eq 'svc_dsl' ) {
+%   push @fields, 'has_router';
+  <TR>
+    <TD COLSPAN=3 ALIGN="right">
+      <% emt('This service has an attached router') %>
+    </TD>
+    <TD>
+      <INPUT TYPE="checkbox" NAME="has_router" VALUE="Y" \
+      <% $part_svc->has_router ? 'CHECKED' : '' %>>
+    </TD>
+  </TR>
+% }
 </TABLE>
 <& /elements/progress-init.html,
   $svcdb, #form name