Merge branch 'master' into og-api-tokens-simple
This commit is contained in:
@@ -88,6 +88,7 @@ web_plugins:
|
||||
- Device::Modules
|
||||
- Device::Neighbors
|
||||
- Device::Addresses
|
||||
- Device::Vlans
|
||||
extra_web_plugins: []
|
||||
sidebar_defaults:
|
||||
search_node:
|
||||
@@ -229,9 +230,9 @@ devices_no: []
|
||||
devices_only: []
|
||||
discover_no: []
|
||||
discover_only: []
|
||||
discover_no_type:
|
||||
- '(?i)phone'
|
||||
- '(?i)(?:wap|wireless)'
|
||||
discover_no_type: []
|
||||
discover_waps: true
|
||||
discover_phones: false
|
||||
discover_min_age: 0
|
||||
macsuck_no: []
|
||||
macsuck_only: []
|
||||
|
||||
@@ -39,20 +39,18 @@ device_auth:
|
||||
|
||||
|
||||
# ¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸
|
||||
#
|
||||
# SOME MORE INTERESTING SETTINGS WHERE THE DEFAULTS ARE PROBABLY OKAY
|
||||
#
|
||||
# ¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸
|
||||
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# OTHER INTERESTING SETTINGS WHERE THE DEFAULTS ARE PROBABLY OKAY
|
||||
# ---------------------------------------------------------------
|
||||
|
||||
# do not discover IP Phones or Wireless Access Points.
|
||||
# discover Wireless Access Points, but not IP Phones
|
||||
# usually these are visible as device neighbors but don't support
|
||||
# SNMP, which just clogs up the job queue.
|
||||
# ```````````````````````````````````````````````````````````````
|
||||
#discover_no_type:
|
||||
# - '(?i)phone'
|
||||
# - '(?i)(?:wap|wireless)'
|
||||
#discover_waps: true
|
||||
#disover_phones: false
|
||||
|
||||
# this is the schedule for automatically keeping netdisco up-to-date;
|
||||
# these are good defaults, so only uncomment if needing to change.
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
BEGIN;
|
||||
|
||||
ALTER TABLE device_port_properties ADD COLUMN "ifindex" bigint;
|
||||
|
||||
COMMIT;
|
||||
@@ -32,7 +32,7 @@ $(document).ready(function() {
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '">' + he.encode(data || '') + '</a>' :
|
||||
data;
|
||||
he.encode(data || '');
|
||||
}
|
||||
}, {
|
||||
"data": 'name',
|
||||
|
||||
@@ -50,10 +50,12 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>OS / Version</td>
|
||||
<td>[% d.os | html_entity %] /
|
||||
<a rel="tooltip" data-placement="top" data-offset="5"
|
||||
data-title="Find Similar Devices"
|
||||
href="[% search_device %]&q=[% d.os_ver | uri %]&os_ver=[% d.os_ver | uri %]">[% d.os_ver | html_entity %]</a>
|
||||
<td>
|
||||
<a rel="tooltip" data-placement="top" data-offset="5" data-title="Find Similar Devices"
|
||||
href="[% search_device %]&q=[% d.os | uri %]&os=[% d.os | uri %]">[% d.os | html_entity %]</a>
|
||||
/
|
||||
<a rel="tooltip" data-placement="top" data-offset="5" data-title="Find Similar Devices"
|
||||
href="[% search_device %]&q=[% d.os_ver | uri %]&os_ver=[% d.os_ver | uri %]">[% d.os_ver | html_entity %]</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
@@ -12,7 +12,15 @@
|
||||
[% th_class = ' class="portsort"' %]
|
||||
[% END %]
|
||||
<th[% th_class %]>
|
||||
[% IF item.name == 'c_neighbors' %]
|
||||
[% IF params.c_nodes %]
|
||||
Connected Nodes & Devices
|
||||
[% ELSE %]
|
||||
Connected Devices
|
||||
[% END %]
|
||||
[% ELSE %]
|
||||
[% item.label | html_entity %]
|
||||
[% END %]
|
||||
</th>
|
||||
[% END %]
|
||||
</tr>
|
||||
@@ -361,8 +369,8 @@
|
||||
<i class="icon-link text-warning"
|
||||
rel="tooltip" data-placement="top" data-offset="3"
|
||||
data-animation="" data-title="Manual Topology"></i>
|
||||
[% END %]
|
||||
</a>
|
||||
[% END %]
|
||||
</td>
|
||||
[% END %]
|
||||
|
||||
|
||||
31
share/views/ajax/device/vlans.tt
Normal file
31
share/views/ajax/device/vlans.tt
Normal file
@@ -0,0 +1,31 @@
|
||||
<table id="data-table" class="table table-striped table-bordered" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>VLAN ID</th>
|
||||
<th>VLAN Name</th>
|
||||
</tr>
|
||||
</thead>
|
||||
</table>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function() {
|
||||
var table = $('#data-table').dataTable({
|
||||
"deferRender": true,
|
||||
"data": [% results %],
|
||||
"columns": [
|
||||
{
|
||||
"data": 'vlan',
|
||||
"render": function(data, type, row, meta) {
|
||||
return '<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '">' + data + '</a>';
|
||||
}
|
||||
}, {
|
||||
"data": 'description',
|
||||
"render": function(data, type, row, meta) {
|
||||
return '<a href="[% uri_for('/search') %]?tab=vlan&q=' + encodeURIComponent(data) + '">' + he.encode(data || '') + '</a>';
|
||||
}
|
||||
}
|
||||
],
|
||||
[% INCLUDE 'ajax/datatabledefaults.tt' -%]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
10
share/views/ajax/device/vlans_csv.tt
Normal file
10
share/views/ajax/device/vlans_csv.tt
Normal file
@@ -0,0 +1,10 @@
|
||||
[% USE CSV -%]
|
||||
[% CSV.dump([ 'VLAN ID' 'VLAN Name' ]) %]
|
||||
|
||||
[% FOREACH row IN results %]
|
||||
[% mylist = [] %]
|
||||
[% mylist.push(row.vlan) %]
|
||||
[% mylist.push(row.description) %]
|
||||
[% CSV.dump(mylist) %]
|
||||
|
||||
[% END %]
|
||||
@@ -41,8 +41,8 @@ $(document).ready(function() {
|
||||
"type": 'portsort',
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '&c_nodes=on">' + he.encode(data) + '</a>' :
|
||||
data;
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '&c_nodes=on">' + he.encode(data || '') + '</a>' :
|
||||
he.encode(data || '');
|
||||
}
|
||||
}, {
|
||||
"data": 'ssid',
|
||||
|
||||
@@ -59,8 +59,8 @@ $(document).ready(function() {
|
||||
"type": 'portsort',
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '">' + he.encode(data) + '</a>' :
|
||||
data;
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '">' + he.encode(data || '') + '</a>' :
|
||||
he.encode(data || '');
|
||||
}
|
||||
}, {
|
||||
"data": 'port_name',
|
||||
|
||||
@@ -27,8 +27,8 @@ $(document).ready(function() {
|
||||
"type": 'portsort',
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.left_dns || row.left_ip) + '&f=' + encodeURIComponent(data) + '&c_duplex=on">' + he.encode(data) + '</a>' :
|
||||
data;
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.left_dns || row.left_ip) + '&f=' + encodeURIComponent(data) + '&c_duplex=on">' + he.encode(data || '') + '</a>' :
|
||||
he.encode(data || '');
|
||||
}
|
||||
}, {
|
||||
"data": 'left_duplex',
|
||||
@@ -45,8 +45,8 @@ $(document).ready(function() {
|
||||
"type": 'portsort',
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.right_dns || row.right_ip) + '&f=' + encodeURIComponent(data) + '&c_duplex=on">' + he.encode(data) + '</a>' :
|
||||
data;
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.right_dns || row.right_ip) + '&f=' + encodeURIComponent(data) + '&c_duplex=on">' + he.encode(data || '') + '</a>' :
|
||||
he.encode(data || '');
|
||||
}
|
||||
}, {
|
||||
"data": 'right_duplex',
|
||||
|
||||
@@ -25,8 +25,8 @@ $(document).ready(function() {
|
||||
"type": 'portsort',
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '&c_duplex=on">' + he.encode(data) + '</a>' :
|
||||
data;
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '&c_duplex=on">' + he.encode(data || '') + '</a>' :
|
||||
he.encode(data || '');
|
||||
}
|
||||
}, {
|
||||
"data": 'name',
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<table id="data-table" class="table table-striped table-bordered" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Node</th>
|
||||
<th>IP Address</th>
|
||||
<th>MAC Address</th>
|
||||
<th class="nd_center-cell">DNS</th>
|
||||
<th>Last Used</th>
|
||||
|
||||
@@ -27,8 +27,8 @@ $(document).ready(function() {
|
||||
"type": 'portsort',
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&c_nodes=on&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '">' + he.encode(data) + '</a>' :
|
||||
data;
|
||||
'<a href="[% device_ports %]&c_nodes=on&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '">' + he.encode(data || '') + '</a>' :
|
||||
he.encode(data || '');
|
||||
}
|
||||
}, {
|
||||
"data": 'remote_id',
|
||||
|
||||
@@ -25,8 +25,8 @@ $(document).ready(function() {
|
||||
"type": 'portsort',
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '&c_nodes=on">' + he.encode(data) + '</a>' :
|
||||
data;
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '&c_nodes=on">' + he.encode(data || '') + '</a>' :
|
||||
he.encode(data || '');
|
||||
}
|
||||
}, {
|
||||
"data": 'description',
|
||||
|
||||
@@ -26,8 +26,8 @@ $(document).ready(function() {
|
||||
"type": 'portsort',
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '&c_nodes=on">' + he.encode(data) + '</a>' :
|
||||
data;
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '&c_nodes=on">' + he.encode(data || '') + '</a>' :
|
||||
he.encode(data || '');
|
||||
}
|
||||
}, {
|
||||
"data": 'description',
|
||||
|
||||
@@ -26,8 +26,8 @@ $(document).ready(function() {
|
||||
"type": 'portsort',
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '&c_nodes=on">' + he.encode(data) + '</a>' :
|
||||
data;
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.ip) + '&f=' + encodeURIComponent(data) + '&c_nodes=on">' + he.encode(data || '') + '</a>' :
|
||||
he.encode(data || '');
|
||||
}
|
||||
}, {
|
||||
"data": 'description',
|
||||
|
||||
@@ -20,27 +20,27 @@ $(document).ready(function() {
|
||||
{
|
||||
"data": 'left_device',
|
||||
"render": function(data, type, row, meta) {
|
||||
return '<a href="[% device_ports %]&q=' + encodeURIComponent(data) + '">' + he.encode(data) + '</a>'; }
|
||||
return '<a href="[% device_ports %]&q=' + encodeURIComponent(data) + '">' + he.encode(data || '') + '</a>'; }
|
||||
}, {
|
||||
"data": 'left_port',
|
||||
"type": 'portsort',
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.left_device) + '&f=' + encodeURIComponent(data) + '">' + he.encode(data) + '</a>' :
|
||||
data; }
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.left_device) + '&f=' + encodeURIComponent(data) + '">' + he.encode(data || '') + '</a>' :
|
||||
he.encode(data || ''); }
|
||||
}, {
|
||||
"data": 'left_vlans'
|
||||
}, {
|
||||
"data": 'right_device',
|
||||
"render": function(data, type, row, meta) {
|
||||
return '<a href="[% device_ports %]&q=' + encodeURIComponent(data) + '">' + he.encode(data) + '</a>'; }
|
||||
return '<a href="[% device_ports %]&q=' + encodeURIComponent(data) + '">' + he.encode(data || '') + '</a>'; }
|
||||
}, {
|
||||
"data": 'right_port',
|
||||
"type": 'portsort',
|
||||
"render": function(data, type, row, meta) {
|
||||
return type === 'display' ?
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.right_device) + '&f=' + encodeURIComponent(data) + '">' + he.encode(data) + '</a>' :
|
||||
data; }
|
||||
'<a href="[% device_ports %]&q=' + encodeURIComponent(row.right_device) + '&f=' + encodeURIComponent(data) + '">' + he.encode(data || '') + '</a>' :
|
||||
he.encode(data || ''); }
|
||||
}, {
|
||||
"data": 'right_vlans'
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<th>Status</th>
|
||||
<th>Name</th>
|
||||
<th>Port</th>
|
||||
<th>Vlan</th>
|
||||
<th>VLAN</th>
|
||||
<th>Speed</th>
|
||||
<th>Last Change</th>
|
||||
</tr>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
[% USE CSV -%]
|
||||
[% CSV.dump([ 'Name' 'Port' 'Description' 'Vlan' ]) %]
|
||||
[% CSV.dump([ 'Name' 'Port' 'Description' 'VLAN' ]) %]
|
||||
|
||||
[% FOREACH row IN results %]
|
||||
[% mylist = [] %]
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<table id="vs-data-table" class="table table-striped table-bordered" width="100%" cellspacing="0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Vlan</th>
|
||||
<th>VLAN</th>
|
||||
<th>Device</th>
|
||||
<th>Description</th>
|
||||
<th>Model</th>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
[% USE CSV -%]
|
||||
[% CSV.dump([ 'Vlan' 'Device' 'Description' 'Model' 'OS' 'Vendor' ]) %]
|
||||
[% CSV.dump([ 'VLAN' 'Device' 'Description' 'Model' 'OS' 'Vendor' ]) %]
|
||||
|
||||
[% FOREACH row IN results %]
|
||||
[% mylist = [] %]
|
||||
|
||||
@@ -57,7 +57,6 @@
|
||||
<tr>
|
||||
<th><a href="http://www.postgresql.org">PostgreSQL</a></th>
|
||||
<th>[% stats.pg_ver | html_entity %]</th>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th><a href="http://www.perl.org">Perl</a></th>
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
rel="tooltip" data-placement="left" data-offset="5" data-title="Applies to IPv4 Only">
|
||||
<label class="add-on">
|
||||
<input type="checkbox" id="never"
|
||||
name="never"[% ' checked="checked"' IF params.never %]/>
|
||||
name="never"[% ' checked="checked"' IF (params.never OR vars.sidebar_defaults.report_ipinventory.never) %]/>
|
||||
</label>
|
||||
<label class="nd_checkboxlabel" for="never">
|
||||
<span class="nd_searchcheckbox uneditable-input">List IP's Never Seen</span>
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<div class="clearfix input-prepend">
|
||||
<label class="add-on">
|
||||
<input type="checkbox" id="fruonly"
|
||||
name="fruonly"[% ' checked="checked"' IF vars.sidebar_defaults.report_moduleinventory.fruonly %]/>
|
||||
name="fruonly"[% ' checked="checked"' IF (params.fruonly OR vars.sidebar_defaults.report_moduleinventory.fruonly) %]/>
|
||||
</label>
|
||||
<label class="nd_checkboxlabel" for="fruonly">
|
||||
<span class="nd_searchcheckbox uneditable-input">FRU Only</span>
|
||||
@@ -67,7 +67,7 @@
|
||||
<div class="clearfix input-prepend">
|
||||
<label class="add-on">
|
||||
<input type="checkbox" id="matchall"
|
||||
name="matchall"[% ' checked="checked"' IF vars.sidebar_defaults.report_moduleinventory.matchall %]/>
|
||||
name="matchall"[% ' checked="checked"' IF (params.matchall OR vars.sidebar_defaults.report_moduleinventory.matchall) %]/>
|
||||
</label>
|
||||
<label class="nd_checkboxlabel" for="matchall">
|
||||
<span class="nd_searchcheckbox uneditable-input">Match All Options</span>
|
||||
|
||||
Reference in New Issue
Block a user