Add NAC columns to UI (#941)

* Add NAC columns to UI

* Compact variant with a "NAC Summary" column

* display PAE stuff as very short summary in web and full columbs in csv

* add tooltips for actual port status and state detail

* minor naming tweaks

Co-authored-by: Oliver Gorwits <oliver@cpan.org>
This commit is contained in:
Christian Ramseyer
2022-12-13 09:16:32 +01:00
committed by GitHub
parent 3dc302b445
commit 8cc8bdcd19
6 changed files with 108 additions and 5 deletions

View File

@@ -389,6 +389,62 @@ Returns the interface index (C<ifIndex>) of the port.
sub ifindex { return (shift)->get_column('ifindex') }
=head2 pae_authsess_user
Returns the pae_authsess_user of the port.
=cut
sub pae_authsess_user { return (shift)->get_column('pae_authsess_user') }
=head2 pae_authsess_user_net_mac
Returns the pae_authsess_user of the port as a NetAddr::MAC instance.
=cut
sub pae_authsess_user_net_mac { return NetAddr::MAC->new(mac => ((shift)->pae_authsess_user || '')) }
=head2 pae_authconfig_port_control
Returns the pae_authconfig_port_control of the port.
=cut
sub pae_authconfig_port_control { return (shift)->get_column('pae_authconfig_port_control') }
=head2 pae_authconfig_state
Returns the pae_authconfig_state of the port.
=cut
sub pae_authconfig_state { return (shift)->get_column('pae_authconfig_state') }
=head2 pae_authconfig_port_status
Returns the pae_authconfig_port_status of the port.
=cut
sub pae_authconfig_port_status { return (shift)->get_column('pae_authconfig_port_status') }
=head2 pae_authsess_mab
Returns the pae_authsess_mab of the port.
=cut
sub pae_authsess_mab { return (shift)->get_column('pae_authsess_mab') }
=head2 pae_last_eapol_frame_source
Returns the pae_last_eapol_frame_source of the port.
=cut
sub pae_last_eapol_frame_source { return (shift)->get_column('pae_last_eapol_frame_source') }
=head2 remote_dns
Returns a hostname resolved from C<remote_ip> column.

View File

@@ -158,11 +158,23 @@ sub with_properties {
properties.remote_is_phone
properties.remote_dns
properties.ifindex
properties.pae_authconfig_port_control
properties.pae_authconfig_state
properties.pae_authconfig_port_status
properties.pae_authsess_user
properties.pae_authsess_mab
properties.pae_last_eapol_frame_source
/],
'+as' => [qw/
error_disable_cause
remote_is_discoverable remote_is_wap remote_is_phone remote_dns
ifindex
ifindex
pae_authconfig_port_control
pae_authconfig_state
pae_authconfig_port_status
pae_authsess_user
pae_authsess_mab
pae_last_eapol_frame_source
/],
join => 'properties',
});