RT# 75817 - updated UI to be more intuitive
[freeside.git] / httemplate / misc / phone_avail-import.html
index de280d0..0febfbc 100644 (file)
@@ -3,31 +3,70 @@
 Import a file containing phone numbers (DIDs).
 <BR><BR>
 
-<% include( '/elements/form-file_upload.html',
-              'name'      => 'PhonenumImportForm',
-              'action'    => 'process/phone_avail-import.html',
-              'num_files' => 1,
-              'fields'    => [ 'format', 'availbatch', 'exportnum', 'countrycode' ],
-              'message'   => 'DID import successful',
-              'url'       => $p."search/phone_avail.html?availbatch=$availbatch",
-          )
-%>
+<& /elements/form-file_upload.html,
+     'name'      => 'PhonenumImportForm',
+     'action'    => 'process/phone_avail-import.html',
+     'num_files' => 1,
+     'fields'    => [ 'format', 'availbatch', 'exportnum', 'countrycode',
+                      'ordernum', 'confirmed', 'vendor_order_id' ],
+     'message'   => 'DID import successful',
+     'url'       => $p."search/phone_avail.html?availbatch=$availbatch",
+     'onsubmit'  => "document.PhonenumImportForm.submitButton.disabled=true;",
+&>
 
 <% &ntable("#cccccc", 2) %>
 
-  <INPUT TYPE="hidden" NAME="format" VALUE="default">
 
   <INPUT TYPE="hidden" NAME="availbatch" VALUE="<% $availbatch %>">
 
+% if ( $ordernum ) {
+    <TR>
+       <TD ALIGN="RIGHT">Bulk DID Order #</TD>
+       <TD><% $ordernum %>
+           <INPUT TYPE="hidden" NAME="ordernum" VALUE="<% $ordernum %>">
+       </TD>
+    </TR>
+    <TR>
+       <TD ALIGN="RIGHT">Vendor Order #</TD>
+       <TD>
+           <INPUT TYPE="text" NAME="vendor_order_id" VALUE="<% $vendor_order_id %>">
+       </TD>
+    </TR>
+    
+    <% include( '/elements/tr-input-date-field.html', {
+                   'name' => 'confirmed',
+                   'label' => 'Order Confirmed',
+                   'value' => $confirmed,
+           })
+    %>
+
+% } 
+  <TR>
+    <TD ALIGN="RIGHT">Import Format</TD>
+    <TD><% $format %><INPUT TYPE="hidden" NAME="format" VALUE="<% $format %>"></TD>
+  </TR>
+
+% if ( scalar(@exports) == 1 ) { 
+%   my $export = $exports[0];
+    <TR>
+        <TD>Export</TD>
+        <TD>
+            <INPUT TYPE="hidden" name="exportnum" value="<%$export->exportnum%>">
+            <% $export->exportname %>
+        </TD>
+    </TR>
+% } else {
   <% include( '/elements/tr-select-table.html',
                 'table'       => 'part_export',
-                'name_col'    => 'machine',
+                'name_col'    => 'label',
+                'order_by'    => 'ORDER BY exportname, machine',
                 'label'       => 'Export',
                 'empty_label' => 'Select export',
                 'hashref'     => { 'exporttype' => 'internal_diddb', },
                 #'label_callback' => 
             )
   %>
+% }
 
   <TR>
     <TH ALIGN="right">Country code</TH>
@@ -48,9 +87,9 @@ Import a file containing phone numbers (DIDs).
   <TR>
     <TD COLSPAN=2 ALIGN="center" STYLE="padding-top:6px">
       <INPUT TYPE    = "submit"
-             ID      = "submit"
+             ID      = "submitButton"
+             NAME    = "submitButton"
              VALUE   = "Import file"
-             onClick = "document.PhonenumImportForm.submit.disabled=true;"
       >
     </TD>
   </TR>
@@ -64,15 +103,27 @@ Import a file containing phone numbers (DIDs).
 Uploaded files can be CSV (comma-separated value) files or Excel spreadsheets.  The file should have a .CSV or .XLS extension.
 <BR><BR>
 
-<b>Default</b> format has the following field order: <i>state, number, name</i>
+% if ( $ordernum ) {
+    <b>Bulk</b> format has the following field order: <i>state, number, rate center, rate_center_abbrev, msa, latanum</i>
+% } else {
+    <b>Default</b> format has the following field order: <i>state, number, name</i><br>
+% }
 <BR><BR>
-
 Field information:
 <ul>
   <li><i>state</i>: Two-letter state code, i.e. "CA"
   <li><i>number</i>: Phone number
+
+% if ( $ordernum ) { 
+  <li><i>rate center</i>: rate center (required)
+  <li><i>rate_center_abbrev</i>: rate center abbreviation
+  <li><i>msa</i>: MSA
+  <li><i>latanum</i>: LATA #
+% } else {
   <li><i>name</i>: optional, rate center
+% }
 </ul>
+<BR><BR>
 
 <% include('/elements/footer.html') %>
 
@@ -83,7 +134,30 @@ die "access denied"
 
 my $conf = new FS::Conf;
 
+my $ordernum = $cgi->param('ordernum');
+$ordernum = '' unless $ordernum =~ /^\d+$/;
+
+my $vendor_order_id = '';
+my $confirmed = '';
+
+my $order = '';
+$order = qsearchs('did_order', { 'ordernum' => $ordernum } ) 
+    if $ordernum;
+
+die 'invalid ordernum' unless (!$ordernum || $order);
+
+my $format = 'default';
+
+if ( $order ) {
+    $format = 'bulk';
+    $confirmed = $order->confirmed;
+    $vendor_order_id = $order->vendor_order_id;
+}
+
+
 my $availbatch =
   time2str('webimport-%Y/%m/%d-%T'. "-$$-". rand() * 2**32, time);
+                
+my @exports = qsearch('part_export', { 'exporttype' => 'internal_diddb', });
 
 </%init>