Skip to content

Commit 12cf69f

Browse files
Merge pull request #4022 from hSaria/4010-interface-ip-filter
Fixes #4010: Fixes IP addresses table when filtering interfaces
2 parents 2a4ccae + 5c5b9c9 commit 12cf69f

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

netbox/project-static/js/interface_toggles.js

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22
$('button.toggle-ips').click(function() {
33
var selected = $(this).attr('selected');
44
if (selected) {
5-
$('#interfaces_table tr.ipaddresses').hide();
5+
$('#interfaces_table tr.interface:visible + tr.ipaddresses').hide();
66
} else {
7-
$('#interfaces_table tr.ipaddresses').show();
7+
$('#interfaces_table tr.interface:visible + tr.ipaddresses').show();
88
}
99
$(this).attr('selected', !selected);
1010
$(this).children('span').toggleClass('glyphicon-check glyphicon-unchecked');
@@ -14,17 +14,22 @@ $('button.toggle-ips').click(function() {
1414
// Inteface filtering
1515
$('input.interface-filter').on('input', function() {
1616
var filter = new RegExp(this.value);
17+
var interface;
1718

18-
for (interface of $(this).closest('div.panel').find('tbody > tr')) {
19+
for (interface of $('#interfaces_table > tbody > tr.interface')) {
1920
// Slice off 'interface_' at the start of the ID
20-
if (filter && filter.test(interface.id.slice(10))) {
21+
if (filter.test(interface.id.slice(10))) {
2122
// Match the toggle in case the filter now matches the interface
2223
$(interface).find('input:checkbox[name=pk]').prop('checked', $('input.toggle').prop('checked'));
2324
$(interface).show();
25+
if ($('button.toggle-ips').attr('selected')) {
26+
$(interface).next('tr.ipaddresses').show();
27+
}
2428
} else {
2529
// Uncheck to prevent actions from including it when it doesn't match
2630
$(interface).find('input:checkbox[name=pk]').prop('checked', false);
2731
$(interface).hide();
32+
$(interface).next('tr.ipaddresses').hide();
2833
}
2934
}
3035
});

0 commit comments

Comments
 (0)