diff --git a/Netdisco/lib/App/Netdisco/Web/Plugin/Report/PortAdminDown.pm b/Netdisco/lib/App/Netdisco/Web/Plugin/Report/PortAdminDown.pm index 7e723bf3..77000540 100644 --- a/Netdisco/lib/App/Netdisco/Web/Plugin/Report/PortAdminDown.pm +++ b/Netdisco/lib/App/Netdisco/Web/Plugin/Report/PortAdminDown.pm @@ -17,22 +17,21 @@ register_report( get '/ajax/content/report/portadmindown' => require_login sub { my @results = schema('netdisco')->resultset('Device')->search( { 'up_admin' => 'down' }, - { result_class => 'DBIx::Class::ResultClass::HashRefInflator', - select => [ 'ip', 'dns', 'name' ], + { select => [ 'ip', 'dns', 'name' ], join => [ 'ports' ], '+columns' => [ { 'port' => 'ports.port' }, { 'description' => 'ports.name' }, { 'up_admin' => 'ports.up_admin' }, - ], - order_by => { -asc => [qw/me.ip ports.port/] }, + ] } - )->all; + )->hri->all; return unless scalar @results; if ( request->is_ajax ) { - template 'ajax/report/portadmindown.tt', { results => \@results, }, + my $results = to_json (\@results); + template 'ajax/report/portadmindown.tt', { results => $results, }, { layout => undef }; } else { diff --git a/Netdisco/share/views/ajax/report/portadmindown.tt b/Netdisco/share/views/ajax/report/portadmindown.tt index 64fd58d2..3782f2c7 100644 --- a/Netdisco/share/views/ajax/report/portadmindown.tt +++ b/Netdisco/share/views/ajax/report/portadmindown.tt @@ -1,23 +1,42 @@ [% USE Number.Format %] - +
- - - + + + - - [% FOREACH row IN results %] - - - - - - - [% END %] -
DevicePortPort DescriptionAdmin StatusPortPort DescriptionAdmin Status
[% row.dns || row.name || row.ip | html_entity %] - [% row.port | html_entity %][% row.description | html_entity %][% row.up_admin | html_entity %]
+ +