From 48b7447537c2fc7094f4b99c144b548691ca775d Mon Sep 17 00:00:00 2001 From: Oliver Gorwits Date: Wed, 27 Jul 2022 21:30:42 +0100 Subject: [PATCH] make VLAN names option work for VLANS missing a name --- lib/App/Netdisco/Web/Plugin/Device/Ports.pm | 4 ++-- share/views/ajax/device/ports.tt | 4 ++-- share/views/ajax/device/ports_csv.tt | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/App/Netdisco/Web/Plugin/Device/Ports.pm b/lib/App/Netdisco/Web/Plugin/Device/Ports.pm index c493d826..6adae166 100644 --- a/lib/App/Netdisco/Web/Plugin/Device/Ports.pm +++ b/lib/App/Netdisco/Web/Plugin/Device/Ports.pm @@ -109,8 +109,8 @@ get '/ajax/content/device/ports' => require_login sub { select => [ 'port', { count => 'port_vlans.vlan', -as => 'vlan_count' }, - { array_agg => 'port_vlans.vlan', -as => 'vlan_set' }, - { array_agg => 'vlan_entry.description', -as => 'vlan_name_set' }, + { array_agg => \q{port_vlans.vlan ORDER BY port_vlans.vlan}, -as => 'vlan_set' }, + { array_agg => \q{COALESCE(NULLIF(vlan_entry.description,''), vlan_entry.vlan::text) ORDER BY vlan_entry.vlan}, -as => 'vlan_name_set' }, ], join => {'port_vlans' => 'vlan_entry'}, group_by => 'me.port', diff --git a/share/views/ajax/device/ports.tt b/share/views/ajax/device/ports.tt index 2947892b..612ee7d1 100644 --- a/share/views/ajax/device/ports.tt +++ b/share/views/ajax/device/ports.tt @@ -220,8 +220,8 @@ [% IF vlans.$portname.vlan_count <= settings.devport_vlan_limit %] [% SET vlan_count = vlans.$portname.vlan_count %] - [% IF params.c_vlan_names %][% SET vlanlist = vlans.$portname.vlan_name_set.sort %] - [% ELSE %][% SET vlanlist = vlans.$portname.vlan_set.nsort %][% END %] + [% IF params.c_vlan_names %][% SET vlanlist = vlans.$portname.vlan_name_set %] + [% ELSE %][% SET vlanlist = vlans.$portname.vlan_set %][% END %] [% IF vlan_count > 10 %] [%# TODO make this a settable variable %]
([% vlan_count %])
Show VLANs
diff --git a/share/views/ajax/device/ports_csv.tt b/share/views/ajax/device/ports_csv.tt index 439f2bb5..0a0ae82a 100644 --- a/share/views/ajax/device/ports_csv.tt +++ b/share/views/ajax/device/ports_csv.tt @@ -114,8 +114,8 @@ [% IF params.c_vmember %] [% SET portname = row.port %] [% SET output = '' %] - [% IF params.c_vlan_names %][% SET vlanlist = vlans.$portname.vlan_name_set.sort %] - [% ELSE %][% SET vlanlist = vlans.$portname.vlan_set.nsort %][% END %] + [% IF params.c_vlan_names %][% SET vlanlist = vlans.$portname.vlan_name_set %] + [% ELSE %][% SET vlanlist = vlans.$portname.vlan_set %][% END %] [% FOREACH vlan IN vlanlist %] [% SET output = output _ ',' IF NOT loop.first %] [% SET output = output _ vlan %]