[freeside-commits] branch FREESIDE_4_BRANCH updated. 2515baaa240489243b821d62e1aa5178b472cc65

Christopher Burger burgerc at freeside.biz
Tue Apr 10 07:57:07 PDT 2018


The branch, FREESIDE_4_BRANCH has been updated
       via  2515baaa240489243b821d62e1aa5178b472cc65 (commit)
      from  e95fa38dfa01fde9157a6a9852173bb6cddacd24 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 2515baaa240489243b821d62e1aa5178b472cc65
Author: Christopher Burger <burgerc at freeside.biz>
Date:   Tue Apr 10 09:18:29 2018 -0400

    RT#39115 - added a optional display name for oid

diff --git a/FS/FS/part_export/broadband_snmp_get.pm b/FS/FS/part_export/broadband_snmp_get.pm
index 1a8661286..35dcd3154 100644
--- a/FS/FS/part_export/broadband_snmp_get.pm
+++ b/FS/FS/part_export/broadband_snmp_get.pm
@@ -21,6 +21,7 @@ tie my %options, 'Tie::IxHash',
   'snmp_community' => { 'label'=>'Community', 'default'=>'public' },
   'snmp_timeout' => { label=>'Timeout (seconds)', 'default'=>1 },
   'snmp_oid' => { label=>'Object ID', multiple=>1 },
+  'snmp_oid_name' => { label=>'Object Name', multiple=>1 },
 ;
 
 %info = (
@@ -80,6 +81,7 @@ sub snmp_results {
   my $vers = $self->option('snmp_version');
   my $time = ($self->option('snmp_timeout') || 1) * 1000000;
   my @oids = split("\n", $self->option('snmp_oid'));
+  my @oidnames = split("\n", $self->option('snmp_oid_name'));
   my %connect = (
     'DestHost'  => $host,
     'Community' => $comm,
@@ -90,7 +92,9 @@ sub snmp_results {
   return { 'error' => 'Error creating SNMP session' } unless $snmp;
   return { 'error' => $snmp->{'ErrorStr'} } if $snmp->{'ErrorStr'};
   my @out;
-  foreach my $oid (@oids) {
+  for (my $i=0; $i <= $#oids; $i++) {
+    my $oid = $oids[$i];
+    my $oidname = $oidnames[$i];
     $oid = $SNMP::MIB{$oid}->{'objectID'} if $SNMP::MIB{$oid};
     my @values;
     if ($vers eq '1') {
@@ -115,6 +119,7 @@ sub snmp_results {
       next;
     }
     my %result = map { $_ => $SNMP::MIB{$oid}{$_} } qw( objectID label );
+    $result{'name'} = $oidname;
     # unbless @values, for ease of JSON encoding
     $result{'values'} = [];
     foreach my $value (@values) {
diff --git a/httemplate/edit/elements/part_export/broadband_snmp_get.html b/httemplate/edit/elements/part_export/broadband_snmp_get.html
index faf179acc..a426e617d 100644
--- a/httemplate/edit/elements/part_export/broadband_snmp_get.html
+++ b/httemplate/edit/elements/part_export/broadband_snmp_get.html
@@ -45,20 +45,23 @@ function receive_mib_get(obj, rownum) {
 </script>
 
 <table bgcolor="#cccccc" border=0 cellspacing=3>
-<TR><TH>Object ID</TH></TR>
+<TR><TH>Object Name</TH><TH>Object ID</TH></TR>
 <TR id="broadband_snmp_get_template">
   <TD>
+    <INPUT NAME="oid_name" ID="oid_name" SIZE="25">
+  </TD>
+  <TD>
     <INPUT NAME="oid" ID="oid" SIZE="54">
     <INPUT TYPE="button" VALUE="..." ID="openselector" onclick="open_select_mib_get(this)">
   </TD>
 </TR>
 <& /elements/auto-table.html,
   template_row  => 'broadband_snmp_get_template',
-  fieldorder    => ['oid'],
+  fieldorder    => ['oid_name','oid'],
   data          => \@data,
   table         => 'snmp',
 &>
-<INPUT TYPE="hidden" NAME="multi_options" VALUE="snmp_oid">
+<INPUT TYPE="hidden" NAME="multi_options" VALUE="snmp_oid,snmp_oid_name">
 <& foot.html, %opt &>
 <%init>
 my %opt = @_;
@@ -73,11 +76,13 @@ foreach my $field ( qw(snmp_version snmp_community snmp_timeout) ) {
 }
 
 my @oids    = split("\n", $part_export->option('snmp_oid'));
+my @oid_names    = split("\n", $part_export->option('snmp_oid_name'));
 
 my @data;
 while (@oids) {
   my @thisrow = (shift(@oids));
-  push @data, \@thisrow if grep length($_), @thisrow;
+  my $name = shift(@oid_names);
+  push @data, [$name, \@thisrow] if grep length($_), @thisrow;
 }
 
 my $popup_name = 'popup-'.time."-$$-".rand() * 2**32;
diff --git a/httemplate/elements/broadband_snmp_get.html b/httemplate/elements/broadband_snmp_get.html
index 213bc4460..1164504ee 100644
--- a/httemplate/elements/broadband_snmp_get.html
+++ b/httemplate/elements/broadband_snmp_get.html
@@ -26,7 +26,7 @@ function broadband_snmp_get (svcnum) {
           if (obj.error) {
             var row = document.createElement('tr');
             var cell = document.createElement('td');
-            cell.colSpan = '2';
+            cell.colSpan = '3';
             cell.innerHTML = obj['error'];
             row.appendChild(cell);
             table.appendChild(row);
@@ -36,6 +36,9 @@ function broadband_snmp_get (svcnum) {
               var value = obj['values'][j];
               var label = (obj['values'].length > 1) ? (value[0] + '.' + value[1]) : obj['label'];
               var cell = document.createElement('td');
+              cell.innerHTML = obj['name'];
+              row.appendChild(cell);
+              cell = document.createElement('td');
               cell.innerHTML = label;
               row.appendChild(cell);
               cell = document.createElement('td');

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/part_export/broadband_snmp_get.pm                     |  7 ++++++-
 .../edit/elements/part_export/broadband_snmp_get.html       | 13 +++++++++----
 httemplate/elements/broadband_snmp_get.html                 |  5 ++++-
 3 files changed, 19 insertions(+), 6 deletions(-)




More information about the freeside-commits mailing list